Odevlerinizi kendiniz yapmanizi tavsiye ederim baska turlu bu isi ogrenemezsiniz ancak
Kod:
#include <stdio.h>
float aritmetikorta(int *, int);
float harmonikorta(int *, int);
float medyan(int *, int);
int mod(int *, int);
int main(){
int x[]= {2,5,1,2,7,13,15,9,8} ;
printf("aritmetik orta : %f\n", aritmetikorta(x,9));
printf("harmonik orta : %f\n", harmonikorta(x,9));
printf("medyan : %f\n", medyan(x,9));
printf("mod : %d\n", mod(x,9));
system("pause");
}
float aritmetikorta(int *basla , int n)
{
int i ;
float toplam;
for(i=0;i<n ; i++)
toplam += basla[i];
return toplam/n;
}
float harmonikorta(int *basla , int n)
{
float toplam=0;
int i;
for(i=0;i<n ; i++)
toplam += 1/(float)basla[i];
return (float)n/toplam;
}
float medyan(int * basla, int n)
{
int i,j,tmp;
for(i=0;i<n-1;i++)
for(j=0;j<n-1;j++)
if(basla[j+1] > basla[j])
{
tmp= basla[j];
basla[j] = basla[j+1];
basla[j+1] = tmp;
}
if(n%2==0)
return(float)( basla[i/2-1] + basla[i/2])/2;
else
return basla[(i-1)/2];
}
int mod(int * basla, int n)
{
int *yer = malloc(n*sizeof(int));
int i,j ;
for(i=0;i <n ;i++)
yer[i]=0;
for(i=0;i<n;i++)
for(j=0;j<n; j++)
if(basla[i]==basla[j])
yer[i]++;
int max=0;
int nerde;
for(i=0;i<n;i++)
if(yer[i]>max){
max = yer[i];
nerde = i;
}
return basla[nerde];
}