import java.util.Scanner; /** * Programa que calcula maximo, minimo y promedio de un arreglo de valores * * @author Humberto * @version 25 / 11 / 2011 */ public class Programa { /* Lector de entradas del usuario */ static Scanner sc = new Scanner(System.in); /* Constante que define el tamano del arreglo */ public static final int TAMANO = 4; public static void main (String args[]) { float valores[] = new float[TAMANO]; float maximo; float minimo; float promedio; leer_valores(valores); maximo = calcula_maximo(valores); minimo = calcula_minimo(valores); promedio = calcula_promedio(valores); despliega_resultados(valores, maximo, minimo, promedio); } /** * El siguiente sub-programa lee valores de la consola y los guarda en el arreglo que recibe como parametro * * parametros: arreglo de valores * retorno: nada */ static void leer_valores(float valores[]) { int indice; /* Nota: valores.length da el tamano del arreglo */ for (indice = 0;indice < valores.length; indice++) { System.out.println("Introduce el valor #"+indice+" ?"); valores[indice] = sc.nextFloat(); } } /** * El siguiente sub-programa regresa el maximo de un arreglo de valores * * parametros: arreglo de valores * retorno: maximo */ static float calcula_maximo(float valores[]) { float maximo = 0; int indice; for (indice = 0;indice < valores.length; indice++) { if(valores[indice]>maximo) { maximo = valores[indice]; } } return maximo; } /** * El siguiente sub-programa regresa el minimo de un arreglo de valores * * parametros: arreglo de valores * retorno: minimo */ static float calcula_minimo(float valores[]) { float minimo = valores[0]; int indice; /* Nota: El indice comienza en uno pues es inutil volver a comparar el primer valor con si mismo */ for (indice = 1;indice < valores.length; indice++) { if(valores[indice]