jueves, 15 de octubre de 2015

Sacar promedio en java usando JOptionPane y DecimalFormat















// Programa del promedio de una clase mediante la repetición controlada por centinela en java.
import java.text.DecimalFormat;  // clase para dar formato a los números
import javax.swing.JOptionPane;
public class promedio {
public static void main( String args[] )
{
int total;           // suma de las calificaciones
int contadorCalif;   // número de calificaciones introducidas
int calificacion;    // valor de la calificación
double promedio;  // número con punto decimal para el promedio
String cadenaCalif;  // calificación introducida por el usuario

// fase de inicialización
total = 0;         // incializar el total
contadorCalif = 0;  // inicializar contador de ciclo

// fase de procesamiento
// obtener la primera calificación del usuario
cadenaCalif = JOptionPane.showInputDialog("Escriba calificación como entero o -1 para salir:" );

// convertir cadenaCalif en int
calificacion = Integer.parseInt( cadenaCalif );

// iterar hasta que el usuario introduzca el valor centinela
while ( calificacion != -1 )
{
total = total + calificacion; // sumar calificacion al total
contadorCalif = contadorCalif + 1; // incrementar el contador

// obtener siguiente calificación del usuario
cadenaCalif = JOptionPane.showInputDialog("Escriba calificación como entero o -1 para salir:" );

// convertir cadenaCalif en int
calificacion = Integer.parseInt( cadenaCalif );
} // fin de instrucción while

// fase de terminación
DecimalFormat dosDigitos = new DecimalFormat( "0.00" );
// si el usuario introdujo al menos una calificación...
if ( contadorCalif != 0 )
{
// calcular el promedio de todas las calificaciones introducidas
promedio = (double) total / contadorCalif;
// mostrar el promedio con dos dígitos de precisión
JOptionPane.showMessageDialog( null,"El promedio de la clase es " + dosDigitos.format( promedio ),"Promedio de la clase", JOptionPane.INFORMATION_MESSAGE );
} // fin de la parte if de la instrucción if...else
else // si no se introdujeron calificaciones, imprimir el mensaje apropiado
JOptionPane.showMessageDialog( null, "No se introdujeron calificaciones","Promedio de la clase", JOptionPane.INFORMATION_MESSAGE );
System.exit( 0 );  // terminar la aplicación
} // fin de main
} // fin de la clase Promedio

1 comentario:

  1. Bueno gente aqui les dejo un pco de lo que llevo haciendo en java me gustaria que lo revicen , la verdad llevo recien 1 semana programando , me gustaria saber sus opiniones , por favor veanlo me ayudaria para seguir creciendo y seguir programando





    String dato = JOptionPane.showInputDialog("Ingrese el Nombre del Alumno" , JOptionPane.QUESTION_MESSAGE);
    String curso = JOptionPane.showInputDialog("Ingrese el Curso del Alumno");
    double n1 = Double.parseDouble(JOptionPane.showInputDialog("Ingrese la primera nota : "));
    double n2 = Double.parseDouble(JOptionPane.showInputDialog("Ingrese la segunda nota : "));
    double n3 = Double.parseDouble(JOptionPane.showInputDialog("Ingrese la tercera nota : "));
    double p=(n1+n2+n3)/3;

    JOptionPane.showMessageDialog(null, "El alumno es : " + dato +
    "\nCurso del Alumno : " + curso +
    "\nPromedio : "+ (int) + p);
    if (p>13){
    JOptionPane.showMessageDialog(null,"\nAlumno Aprovado");
    } else {
    JOptionPane.showMessageDialog(null,"\nAlumno desaprovado");
    }



    int cantidadDatos = 0;

    cantidadDatos = Integer.parseInt(JOptionPane.showInputDialog(null, "Cuantos datos va a ingresar?",
    "Cuantos numeros?", JOptionPane.QUESTION_MESSAGE));
    // declaramos una variable auxiliar para almacenar temporalmente
    int aux = 0;
    for(int i = 0; i < cantidadDatos; i++)
    {
    // almacenamos dentro de aux el dato pedido
    aux += Integer.parseInt(JOptionPane.showInputDialog(null, "Ingrese el numero",
    "Ingresar numero", JOptionPane.QUESTION_MESSAGE));
    }

    // sacamos el promedio
    int promedio = aux / cantidadDatos;
    // imprimimos el promedio dentro de un cuadro de dialogo
    JOptionPane.showMessageDialog(null, "Operacion: " + aux + " / " +
    cantidadDatos + "\n" +"El promedio es: " + promedio,
    "Resultado", JOptionPane.INFORMATION_MESSAGE);

    ResponderEliminar