[código] Instrucciones de Control en Java (1)
Los ejemplos de esta sección se enfocan en el proceso de desarrollo de programas. Se exponen los tipos primitivos de instrucciones de control para la tomas de decisiones (if, else, if… else, while, do…while, for, switch, etc.). Los ejemplos también muestran el manejo de la repetición controlada por contador y por centinela, y se introducen los operadores de incremento, decremento y asignación de Java y las instrucciones break y switch.
Promedio de una clase mediante la repetición controlada por contador
// Programa del promedio de una clase mediante la repetición controlada por contador.
import javax.swing.JOptionPane;
public class Promedio1
{
public static void main( String args[] )
{
int total; // suma de las calificaciones introducidas por el usuario
int contadorCalif; // número de calificación a introducir a continuación
int calificacion; // valor de la calificación
int promedio; // promedio de calificaciones
String cadenaCalif; // calificación introducida por el usuario
// fase de inicialización
total = 0; // inicializar total
contadorCalif = 1; // inicializar contador de ciclo
// fase de procesamiento
while ( contadorCalif <= 10 ) // iterar 10 veces
{
// pedir la entrada y leer la calificación del usuario
cadenaCalif = JOptionPane.showInputDialog("Escriba la calificación como un entero: " );
// convertir cadenaCalif en int
calificacion = Integer.parseInt( cadenaCalif );
total = total + calificacion; // sumar calificacion al total
contadorCalif = contadorCalif + 1; // incrementar el contador
} // fin de instrucción while
promedio = total / 10; // división de enteros
// mostrar el promedio de las calificaciones del examen
JOptionPane.showMessageDialog( null, "El promedio de la clase es " + promedio,"Promedio de la clase", JOptionPane.INFORMATION_MESSAGE );
System.exit( 0 ); // terminar el programa
} // fin de main
} // fin de la clase Promedio1
Promedio de una clase mediante la repetición controlada por centinela
// Programa del promedio de una clase mediante la repetición controlada por centinela.
import java.text.DecimalFormat; // clase para dar formato a los números
import javax.swing.JOptionPane;
public class Promedio2
{
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 Promedio2
Análisis de los resultados de un examen utilizando while, if y else
// Análisis de los resultados de un examen.
import javax.swing.JOptionPane;
public class Analisis
{
public static void main( String args[] )
{
// inicializar variables en las declaraciones
int aprobados = 0; // número de aprobados
int reprobados = 0; // número de reprobados
int contadorEstudiantes = 1; // contador de estudiantes
int resultado; // resultado de un examen
String entrada; // valor introducido por el usuario
String salida; // cadena de salida
// procesar 10 estudiantes utilizando un ciclo controlado por contador
while ( contadorEstudiantes <= 10 )
{
entrada = JOptionPane.showInputDialog("Escriba el resultado (1 = aprobado, 2 = reprobado)" );
// convertir resultado en int
resultado = Integer.parseInt( entrada );
// si resultado es 1, incrementar aprobados; if...else anidado en while
if ( resultado == 1 )
aprobados = aprobados + 1;
else // si resultado no es 1, incrementar reprobados
reprobados = reprobados + 1;
// incrementar contadorEstudiantes para que el ciclo termine eventualmente
contadorEstudiantes = contadorEstudiantes + 1;
} // fin de instrucción while
// fase de terminación; preparar y mostrar resultados
salida = "Aprobados: " + aprobados + "\nReprobados: " + reprobados;
// determinar si aprobaron más de 8 estudiantes
if ( aprobados > 8 )
salida = salida + "\nAumentar colegiatura";
JOptionPane.showMessageDialog( null, salida,
"Análisis de resultados del examen",JOptionPane.INFORMATION_MESSAGE );
System.exit( 0 ); // terminar la aplicación
} // fin de main
} // fin de la clase Analisis
Los operadores preincremento y postdecremento
// Los operadores preincremento y postdecremento.
public class Incremento
{
public static void main( String args[] )
{
int c;
// demostrar el uso de postincremento
c = 5; // asignar 5 a c
System.out.println( c ); // imprimir 5
System.out.println( c++ ); // imprimir 5 y después postincremento
System.out.println( c ); // imprimir 6
System.out.println(); // saltar una línea
// demostrar el uso de preincremento
c = 5; // asignar 5 a c
System.out.println( c ); // imprimir 5
System.out.println( ++c ); // preincrementar y después imprimir 6
System.out.println( c ); // imprimir 6
} // fin de main
} // fin de la clase Incremento
Los ejercicios utilizados en este post están basados en ejemplos del libro Cómo programar en Java de Deitel, y por lo tanto están bajo la licencia que esta editorial disponga.
43 Comentarios | deja el tuyo





me gustaria encontrar una funcion para deposito y retiro ya que estoy creando un proyecto para un banco pero no me funcionas esos dos metodos “Ayuda”
Hola que tal… esta sùper todo… soy estudiante de sistemas y estoy haciendo un pequeño programa utilizando JOptionPane pero no me da… soy nueva en esto…el programa es de pedirle al usuario que ingrese un nùmero de factura y escriba si es una tutela o un CTC y segùn esto liquidar la factura como se hace en las clìnicas… gracias en lo que me puedan colaborar.. bye
me gustaria saver que es un bandera y sentinela..conceptos gracias