решить через функции на си
решить через функции на си.Подсчитать количество элементов матрицы Р (10х12), отличающихся от среднего арифметического значения элементов массива М (100) более чем вдвое, и количество элементов массива М, отличающихся от среднего арифметического значения матрицы Р более чем втрое. набросок:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#define N 10
#define K 12
#define M 100
void scan1(int* Z,int x)
{
for(int i=0;i<x;i++)
Z[i]=rand()%10 -5;
}
int print1(int* Z, int x)
{
for(int i = 0; i < x; i++)
printf("%5d",Z[i]);
printf ("\n");
}
void scan2(int** Z,int x,int y)
{
for(int i=0;i<x;i++)
for(int j=0;j<y;j++)
Z[i*y+j]=rand()%10 -5;
}
int print2(int** Z, int x, int y,int k)
{
for(int i = 0; i < x; i++)
{
for(int j = 0; j < (y-k); j++)
printf("%5d",Z[i*y+j]);
printf ("\n");
}
double midx2(int* Z, int x)
{
double u=0;
for(int i = 0;i<x;i++)
u+=Z[i] ;
u=(u/x)*2;
}
int search(double r,int** Z,int x,int y)
{
double u=0;
int q=0;
for(int i=0;i<x;i++)
for(int j=0;j<y;j++)
if(Z[i][j]>u)q++;
}
int main()
{
int q=0;
double u=0;
int G[N][K];
int D[M];
scan2(&G[0][0],N,M);
scan1(&D[0],M);
midx2(&D[0],M);
search(u,&G[0][0],N,M);
print2(&G[0][0],N,M,k);
printf("\n");
print1(&D[0],M);
printf("%d",q);
return 0;
}
