giustamente vi serve il codice però sarà megio andare per gradi allora questo programma usa una matrice per memorizzare dei valori poi stampa il valore massimo la media quanti numeri primi ci sono e deve essere riordinato dal piu piccolo al piu grande. fino a valore max e media funziona non riesco ad ottenere quanti numeri primi ci sono.
codice:
#include <stdio.h>
#include <stdlib.h>
#define RIG 6
#define COL 6
int funmax(int *max,int matrice[RIG][COL]);
float funmedia(float *media,int matrice[RIG][COL]);
int funprimi(int *primi,int matrice[RIG][COL]);
int main()
{
int matrice[RIG][COL]={{1},{1}};
int max=0;
float media;
int primi=0;
int num;
int j;
int i;
for(j=1;j<RIG;j++)
{for(i=1;i<COL;i++)
{
printf("inserisci un numero da 1 a 20:");
scanf("%d",&num);
matrice[j][i]=num;
}
}
funmax(&max,matrice);
funmedia(&media,matrice);
funprimi(&primi,matrice);
printf("il valore max e': %d\n",max);
printf("la media e': %.2f\n",media);
printf("i numeri primi sono %d\n",primi);
system("pause");
return 0;
}
int funmax(int *max,int matrice[RIG][COL])
{
int j;
int i;
for(i=1;i<COL;i++)
{for(j=1;j<RIG;j++)
{if(matrice[j][i]>*max)
{
*max=matrice[j][i];
}
}
}
}
float funmedia(float *media,int matrice[RIG][COL])
{
int j;
int i;
int total=0;
for(i=1;i<COL;i++)
{for(j=1;j<RIG;j++)
{
total+=matrice[j][i];
}
}
*media=(float) total / 2;
}
int funprimi(int *primi, int matrice[RIG][COL])
{
int j;
int i;
for(i=1;i<COL;i++)
{for(j=1;j<RIG;j++)
{if(matrice[j][i] % 2 != 0)
{
*primi++;
}
}
}
}