Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int** create(int N);
- void print(int** A, int N);
- int zero(int** A, int N);
- void max(int **A,int N, int *mg, int *mp);
- int main()
- {
- int n;
- printf("Enter N = ");
- scanf("%d", &n);
- int** a=create(n);
- print(a,n);
- int maxg=a[0][0],maxp=a[0][n-1];
- int *p,*t;
- p=&maxg;t=&maxp;
- int null=zero(a,n);
- printf("col-vo 0 = %d\n", null);
- max(a,n,p,t);
- printf("max glav = %d, max pob = %d\n", *p,*t);
- return 0;
- }
- int** create(int N) {//создает массив NxN
- int i,j;
- int** A=(int**)malloc(N*sizeof(int*));
- for (i=0;i<N;i++) {https://www.onlinegdb.com/online_c_compiler#tab-stderr
- A[i]=(int*)malloc(N*sizeof(int));
- for (j=0;j<N;j++) {
- printf("A[%d][%d] = ", i,j);
- scanf("%d",&A[i][j]);
- }
- }
- return A;
- }
- void print(int** A, int N) { //вывода матрицы на экран
- int i,j;
- for (i=0; i<N; i++) {
- for (j=0;j<N;j++)
- printf("%4d", A[i][j]);
- printf("\n");
- }
- printf("\n");
- }
- int zero(int** A, int N) {//находит кол-во нулей
- int i,j,k=0;
- for (i=0; i<N; i++)
- for (j=0;j<N;j++)
- if (A[i][j]==0) k++;
- return k;
- }
- void max(int **A,int N, int *mg, int *mp) { //находит максимум на главной и побочной
- int i,j;
- for (i=0;i<N;i++)
- for (j=0;j<N;j++) {
- if (i==j && A[i][j]>*mg) *mg=A[i][j];
- if (i+j==N-1 && A[i][j]>*mp) *mp=A[i][j];
- }
- }
Add Comment
Please, Sign In to add comment