¿Podría un alma caritativa decirme que error he cometido? El programa recoge de un archivo números, los guarda en un vector y calcula el máximo, la media y el mínimo. Gracias por vuestra atención y un saludo.
Código C:
Ver original#include <stdio.h>
#define LNX 99999
float max(float,int);
float min(float,int);
float med(float,int);
main(){
int i=0;
float v[LNX];
FILE *fp;
fp
= fopen("doc.txt","rt"); if(fp==NULL) {
printf("Erro na apertura do arquivo.\n"); }
else
{
{
i++;
}
printf("O maximo do arquivo e: %f\n", max
(v
[i
],i
)); printf("O minimo do arquivo e: %f\n", min
(v
[i
],i
)); printf("A media do arquivo e: %f\n", med
(v
[i
],i
)); }
}
float max(float *vec, int x) {
float mx=0;
int z=0;
mx=vec[0];
while(z<x)
{
if (vec[z]>=mx)
mx=vec[z];
z++;
}
return(mx);
}
float min(float *vec, int x) {
float mn=0;
int z=0;
mn=vec[0];
while(z<x)
{
if (vec[z]<=mn)
mn=vec[z];
z++;
}
return(mn);
}
float med(float *vec, int x) {
float md=0, suma=0;
int z=0;
while(z<x){
suma=suma + vec[z];
z++;
}
md=suma/z;
return (md);
}