Dzień Dobry ;) Napisałem prosty program i potrzebuje go troszkę zmodyfikować aby zwracał poprzez strukture wartosc maksymalna i minimalna.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void drukm(double a[], int n);
void xyz(double a[], int n, double *pmin, double *pmax, int *ppmin, double *sr);
int main()
{
double *x;
int i,n, xxmin;
double xmin, xmax, srednia;
printf("Podaj ilosc elementow tablicy: ");
scanf("%i",&n);
x=calloc(n,sizeof(double));
for(i=0;i<n;i++)
{
x[i]=rand()*10./RAND_MAX+10.;
}
drukm(x,n);
xyz(x,n,&xmin,&xmax,&xxmin,&srednia);
printf("Twoja srednia wynosi %6.3f\n",srednia/n);
printf("Najwieksza wartosc tablicy to %6.3f\n",xmax);
printf("Najmniejsza wartosc tablicy to %6.3f o numerze %i\n",xmin,xxmin);
free(x);
return 0;
}
void drukm(double a[], int n)
{
int i;
for(i=0;i<n;i++)
{
printf("%i element tablicy wynosi %6.3f\n",i+1,a[i]);
}
}
void xyz(double a[], int n, double *pmin, double *pmax, int *ppmin, double *sr)
{
int i, aamin;
double amin,amax,sred;
amax=a[0];
sred=0;
amin=a[0];
for(i=0;i<n;i++)
{
if(a[i]>amax && a[i]<18) amax=a[i];
if(a[i]<amin) amin=a[i];
}
*pmin=amin;
*pmax=amax;
for(i=0;i<n;i++)
{
if(a[i]==amin) aamin=i+1;
}
*ppmin=aamin;
for(i=0;i<n;i++)
{
sred=sred+a[i];
}
*sr=sred;
}
Z góry dziękuję za pomoc