Enunciado del ejercicio resuelto de programación en C++: realizar un programa que pida el número de valores a calcular y pida los valores (numéricos). Debe calcular (utilizando funciones) el máximo valor, el mínimo valor, la media de todos los valores y la semisuma (media del mínimo y el máximo).
Solución: el código fuente completo del ejercicio resuelto en C++ será:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
#include <stdio.h> #define tamano 20 double media (double*, int); double maximo (double*, int); double minimo (double*, int); double semisuma (double, double); int main(void) { double vector[tamano]; int numeroValores, i; printf("Introduzca el número de valores a calcular:\n"); printf("(El número deberá ser menor de 20): "); scanf("%d", &numeroValores); printf("\n"); printf("Introduzca los %d valores numéricos:\n", numeroValores); for (i = 0; i < numeroValores; i++) { printf("Valor %d: ", i + 1); scanf("%lf", &vector[i]); } printf("\n"); printf("Media = %5.2lf \n", media (vector, numeroValores)); printf("Máximo = %5.0lf \n", maximo (vector, numeroValores)); printf("Mínimo = %5.0lf \n", minimo (vector, numeroValores)); printf("Semisuma = %5.2lf \n", semisuma (maximo(vector, numeroValores), minimo(vector, numeroValores))); return 0; } double media (double* valores, int num) { double suma=0.0, med; int i; for (i = 0; i < num; i++) suma += valores[i]; med = suma / num; return (med); } double minimo (double* valores, int num) { int i; double min; min = valores[0]; for (i = 1; i < num; i++) if (valores[i] < min) min = valores[i]; return (min); } double maximo (double* valores, int num) { int i; double max; max = valores[0]; for (i = 1; i < num; i++) if (valores[i] > max) max = valores[i]; return (max); } double semisuma (double max, double min) { return ((max + min) / 2.0); } |
Si compilamos el programa (siguiendo las instrucciones de este tutorial), pedirá que introduzcamos el número de números a usar, lo introduciremos. A continuación, pedirá cada número. Una vez introducido el último número, mostrará por pantalla la media, el máximo, el mínimo y la semisuma: