Witam
Mam zadanie o następującej treści:
Napisz program, ktory losuje do tablicy NxM liczby rzeczywiste, a nastepnie
oblicza średnia arytmetyczna liczb dodatnich zawartych w tablicy.
Napisałem taki kod programu:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void wstaw_losowo(int tab[3][3])
{
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
tab[i][j]=rand()%50+(-25);
}
}
}
void wyswietl(int tab[3][3])
{
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("Element [%d,%d]= %d ", i,j,tab[i][j]);
}
}
}
int suma (int tab[3][3])
{
int i,j,suma=0;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
if(tab[i][j]>0)
{
suma=suma+tab[i][j];
}
}
}
return(suma);
}
int liczba(int tab[3][3])
{
int i,j,ile;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
if(tab[i][j]>0)
ile++;
}
}
return(ile);
}
int srednia(int tab[3][3])
{
int i,j,sr=0;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
sr=sr+suma(tab)/liczba(tab);
}
}
return(sr);
}
int main(void)
{
int tab[3][3],wynik;
srand(time(NULL));
wstaw_losowo(tab);
wyswietl(tab);
wynik=srednia(tab);
printf("srednia wynosi: %d ",wynik);
return (0);
}
Problem polega na tym , że w momencie jak wyświetlam program to za każdym razem pokazuje mi ,że średnia wynosi 0.Czy ktoś może mi pomóc znaleźć i poprawić ten błąd?.Dodam jeszcze , że program mam napisać w języku c.Z góry dzięki