Logo Studenta

Tarea01_P1b_Sol

Esta es una vista previa del archivo. Inicie sesión para ver el archivo original

#include <stdio.h>
#define MAX 200
/*
1. Dado un vector de números reales:
Escriba un método max que nos devuelva el máximo de los valores incluidos en el vector. 
Escriba un método min que nos devuelva el mínimo de los valores incluidos en el vector. 
Escriba un método media que nos devuelva la media de los valores incluidos en el vector. 
*/
int maximo(int n,int a[]);
int minimo(int n,int a[]);
float media(int n,int a[]);
main()
{int a[MAX],i,valor,n; 
do{
printf("Numero de casillas a usar: "); 
scanf("%d",&n);}while(n<=0); /* Almacena un valor leido de teclado en n */
printf("\n");
for(i=0;i<n;i++)
{printf("Elemento # %d del arreglo: ",(i+1)); /* Llenado de casillas */
scanf("%d",&valor); /* Almacena un valor leido de teclado en valor */
a[i]=valor;} /* Ese valor lo almacena en una casilla correspondiente */
printf("\nEl maximo del arreglo es: %d\nEl minimo del arreglo es: %d\nLa media del arreglo es: %f\n\n",maximo(n,a),minimo(n,a),media(n,a)); /* Imprime los valores maximo,minimo y media del arreglo */
getchar();getchar();
}
int maximo(int n,int a[]) /* Funcion que permite calcular el maximo numero leido de teclado */
{int i,max=a[0];
 for(i=0;i<n;i++)
 { if(a[i]>=max) 
 {max=a[i];}}
 return max;} /* Retorna el numero calculado */
 
int minimo(int n,int a[]) /* Funcion que permite calcular el minimo numero leido de teclado */ 
{int i,min=a[0];
for(i=0;i<n;i++)
 { if(a[i]<min)
 {min=a[i];}}
 return min;} /* Retorna el numero calculado */
float media(int n,int a[]) /* Funcion que permite calcular la "media" de los numeros leidos de teclado */
{ int p;
 float s,t;
 if(n%2!=0) /* Si numero casillas es impar elige la casilla de al medio */
 {p=n/2;
 s= a[p];
 
 return s; } /* Retorna el numero calculado */
 
 else /* Si numero casilla es par, calcula el promedio de las casillas de al medio */
 {p=n/2;
 s= a[(p-1)]+a[p];
 t= (float) s/2;
 
 return t; } /* Retorna el numero calculado */
}

Continuar navegando