C++

Задача на массивы с матрицами

Дана целочисленная квадратная матрица.
Определить максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.
#include<stdio.h>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
 
int summa(int *ar,int n)
  {
  int m,j,i,k;
  int S=0, Smax=-10000;
  m=n;
  for (j=1;j<n;j++)
    {
    k=0;
    S=0;
    for (i=0; i<m-1; i++)
      {
      S=S+(*(ar+i*n+j+k));
      k++;
      }
    m--;
    if (S>Smax) {Smax=S;}
    }
  m=n;
  for (i=1;i<n;i++)
    {
    k=0;
    S=0;
    for (j=0; j<m-1; j++)
      {
      S=S+(*(ar+(i+k)*n+j));
      k++;
      }
    m--;
    if (S>Smax) {Smax=S;}
    }
  return Smax;
}
 
void main()
  {
  int i,j,n,Smax,k;  //,p=-3,b=7;
  int Pr[100];
  int *a;
  clrscr();
//  randomize();
  printf("vvedite razmernost matrici: ");
  scanf("%d",&n);
  printf("\n ");
  a=(int*)malloc (n*n*sizeof(int));
  for (i=0;i<n;i++)
    {
    for (j=0;j<n;j++)
      {
    //  *(a+i*n+j)=random(b-p+1)+p;
      //     printf("%d\t", *(a+i*n+j));
      printf("a[%d,%d]=",i+1,j+1);
      scanf("%d",(a+i*n+j));
      }
    }
  printf("\n ");
  for(i=0;i<n;i++)
Теги:
Матрица
Добавлено: 28 Сентября 2013 07:46:18 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...