Este será un ejemplo sencillo el cual consiste en digitar 5 calificaciones de un alumno y sacará su promedio, el programa dirá si el alumno es aprobado o reprobado teniendo en cuenta una calificación minima de 7, el programa debe preguntar si se quiere capturar otro alumno o salir del mismo.
Comenzaremos creando una nueva clase llama DoWhileCalificaciones, habilitamos la casilla del método main.
En este ejercicio comenzaremos declarando 4 variables una encargada de llevar el conteo de calificaciones digitadas, la segunda para llevar la suma de las calificaciones, la tercera para almacenar el promedio y la cuarta para capturar si se desea capturar otras calificaciones.
int prom=0, sum=0, cont=0;
String resp="";
Continuamos con los ciclos:
do{
cont=0; //Reiniciamos las variables en caso de repetir las calificaciones
sum=0;
prom=0;
do{
cont++;
sum+=Integer.parseInt(JOptionPane.showInputDialog("Digita la calificación "+cont));
}while(cont<5);
prom=sum/cont;
if(prom>=7)
JOptionPane.showMessageDialog(null, "El alumno está aprobado con: "+prom);
else
JOptionPane.showMessageDialog(null, "El alumno está reprobado con: "+prom);
resp=JOptionPane.showInputDialog("¿Desea capturar otro alumno? [S/N]");
}while(resp.equals("S") || resp.equals("s"));
En esta parte usamos una nueva instrucción que es el metodo equals("S"), el cual es un método para comparar cadenas ya que resp es una cadena y la leta "S" también, no se puede comparar una cadena con == puesto que este es sólo para tipos numéricos, véase comparar cadenas.
package pqtDoWhile; import javax.swing.JOptionPane; public class DoWhileCalificaciones { public static void main(String[] args) { int prom=0, sum=0, cont=0; String resp=""; do{ cont=0; //Reiniciamos las variables en caso de repetir las calificaciones sum=0; prom=0; do{ cont++; sum+=Integer.parseInt(JOptionPane.showInputDialog("Digita la calificación "+cont)); }while(cont<5); prom=sum/cont; if(prom>=7) JOptionPane.showMessageDialog(null, "El alumno está aprobado con: "+prom); else JOptionPane.showMessageDialog(null, "El alumno está reprobado con: "+prom); resp=JOptionPane.showInputDialog("¿Desea capturar otro alumno? [S/N]"); }while(resp.equals("S") || resp.equals("s")); } }