gentoo linux, java, software libre y otras hierbas
Dic, 04 2007 - 2:24 pm

[código] Instrucciones de Control en Java (2)

(anterior) 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, ifelse, while, dowhile, 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.

Repetición controlada por contador con la instrucción while

// Repetición controlada por contador.
import java.awt.Graphics;
import javax.swing.JApplet;
public class ContadorWhile extends JApplet
{
	// dibujar líneas en el fondo del subprograma
	public void paint( Graphics g )
	{
		super.paint( g );  // llamar al método paint heredado de JApplet
		int contador = 1;   // inicialización
		while ( contador <= 10 ) // condición de repetición
		{
			g.drawLine( 10, 10, 250, contador * 10 );
			++contador;  // incremento
		} // fin de instrucción while
	} // fin del método paint
} // fin de la clase ContadorWhile


Descargar código fuente

Repetición controlada por contador con la instrucción for

// Repetición controlada por contador con la instrucción for
import java.awt.Graphics;
import javax.swing.JApplet;
public class ContadorFor extends JApplet
{
	// dibujar líneas en el fondo del subprograma
	public void paint( Graphics g )
	{
		super.paint( g );  // llamar al método paint heredado de JApplet

		// el encabezado de la instrucción for incluye la inicialización,
		// la condición de repetición y el incremento
		for ( int contador = 1; contador <= 10; contador++ )
			g.drawLine( 10, 10, 250, contador * 10 );
	} // fin del método paint
} // fin de la clase ContadorFor


Descargar código fuente

Suma de enteros con la instrucción for

// Suma de enteros con la instrucción for.
import javax.swing.JOptionPane;
public class Suma
{
	public static void main( String args[] )
	{
		int total = 0;  // inicializar el total

		// sumar los enteros pares del 2 al 100
		for ( int numero = 2; numero <= 100; numero += 2 )
			total += numero;

		// mostrar el resultado
		JOptionPane.showMessageDialog( null, "La suma es " + total,"Suma de los enteros pares del 2 al 100",JOptionPane.INFORMATION_MESSAGE );

		System.exit( 0 );   // terminar la aplicación
	} // fin de main
} // fin de la clase Suma


Descargar código fuente

Cálculo del interés compuesto con la instrucción for

// Cálculo del interés compuesto.
import java.text.NumberFormat;  // clase para el formato numérico
import java.util.Locale;  // clase para información específica de cada país
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
public class Interes
{
	public static void main( String args[] )
	{
		double cantidad;       // cantidad depositada al final de cada año
		double principal = 1000.0;  // cantidad inicial sin intereses
		double tasa = 0.05;         // tasa de interés

		// crear NumberFormat para la moneda en dólares
		NumberFormat formatoMoneda=NumberFormat.getCurrencyInstance( Locale.US );

		// crear JTextArea para mostrar la salida
		JTextArea areaTextoSalida = new JTextArea();

		// establecer la primera línea de texto en areaTextoSalida
		areaTextoSalida.setText( "Año\tCantidad en depósito\n" );

		// calcular la cantidad en depósito para cada uno de los diez años
		for ( int anio = 1; anio <= 10; anio++ )
		{
			// calcular la nueva cantidad para el año especificado
			cantidad = principal * Math.pow( 1.0 + tasa, anio );
			// anexar una línea de texto a areaTextoSalida
			areaTextoSalida.append( anio + "\t" +formatoMoneda.format( cantidad ) + "\n" );
		}// fin de instrucción for

		// mostrar resultados
		JOptionPane.showMessageDialog( null, areaTextoSalida,"Interés compuesto", JOptionPane.INFORMATION_MESSAGE );

		System.exit( 0 );  // terminar la aplicación
	} // fin de main
} // fin de la clase Interes


Descargar código fuente

Uso de la instrucción do…while

// Uso de la instrucción do...while.
import java.awt.Graphics;
import javax.swing.JApplet;
public class PruebaDoWhile extends JApplet
{
	// dibujar líneas en el subprograma
	public void paint( Graphics g )
	{
		super.paint( g );  // llamar al método paint heredado de JApplet
		int contador = 1;   // inicializar contador

		do
		{
			g.drawOval( 110 - contador * 10, 110 - contador * 10,contador * 20, contador * 20 );
			++contador;
		}
		while ( contador <= 10 );  // fin de instrucción do...while
	} // fin del método paint
} // fin de la clase PruebaDoWhile


Descargar código fuente

Dibujar líneas, rectángulos u óvalos con base en la entrada del usuario (switch)

// Dibujar líneas, rectángulos u óvalos con base en la entrada del usuario.
import java.awt.Graphics;
import javax.swing.*;

public class PruebaSwitch extends JApplet
{
	int opcion;  // la opcion del usuario en cuanto a cuál figura dibujar

	// inicializar el subprograma, obteniendo la opción del usuario
	public void init()
	{
		String entrada;  // la entrada del usuario
		// obtener la opción del usuario
		entrada = JOptionPane.showInputDialog("Escriba 1 para dibujar líneas\n" +
			"Escriba 2 para dibujar rectángulos\n" +
			"Escriba 3 para dibujar óvalos\n" );
		opcion = Integer.parseInt( entrada );  // convertir entrada en int
	} // fin del método init
	// dibujar figuras en el fondo del subprograma
	public void paint( Graphics g )
	{
		super.paint( g );  // llamar al método paint heredado de JApplet
		for ( int i = 0; i < 10; i++ )  // iterar 10 veces (0-9)
		{
			switch ( opcion )  // determinar la figura a dibujar
			{
				case 1:  // dibujar una línea
					g.drawLine( 10, 10, 250, 10 + i * 10 );
					break;  // fin de procesamiento de case

				case 2:  // dibujar un rectángulo
					g.drawRect( 10 + i * 10, 10 + i * 10,50 + i * 10, 50 + i * 10 );
					break;  // fin de procesamiento de case

				case 3:  // dibujar un óvalo
					g.drawOval( 10 + i * 10, 10 + i * 10,50 + i * 10, 50 + i * 10 );
					break;  // fin de procesamiento de case

				default: // dibujar cadena indicando que se escribió un valor incorrecto
					g.drawString( "Se escribió un valor incorrecto",10, 20 + i * 15 );
			} // fin de instrucción switch
		} // fin de instrucción for
	} // fin del método paint
} // fin de la clase PruebaSwitch


Descargar código fuente

Etiquetas: ejemplos, java
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.

14 Comentarios | deja el tuyo

Un enlace entrante

13 Comentarios en “[código] Instrucciones de Control en Java (2)”

  1. Jenry dice:

    realmente esta pàgina me ha servido de mucha ayuda.. !!
    ejemplos ordenados y explicados.. !!
    saludos !!

  2. Jenry dice:

    saludos pa los cachimbos del codigo 07 !!
    especialmente para el burro pasivo q nunka va llevar progra !!
    jajaja…..

    butler de mela !!

  3. CESARMSDN dice:

    hola k tal cuate ralmente tu ejemplos son mas entendidos k los k me enseña mi profe de programacion eres mi”mi hidolo” bye y t deso lo mejo amigo!!

  4. Cristian dice:

    Gracias, vuelve pronto, y recomiéndame con tus amigos :D

  5. chichin dice:

    Hola a todos……muy lindos los ejercicios….les mando a todos besitos con frutillitas

  6. vicky dice:

    hola…. grax por los programas…..

    saludos a todos
    q tengan buen ia

  7. sandra dice:

    hola gracias por la ayudita
    chaooo

  8. Cecilia dice:

    Muy buenos los ejemplos ayudan mucho.
    Gracias por todo.

  9. luis osvaldo dice:

    import java.io.*;
    import java.util.*;

    public class pulgadasyardasetc{
    public static void main(String args[]){

    double Pies=0;
    double Centimetros=0;
    double Pulgadas=0;
    double Metros=0;
    double Yardas=0;

    Scanner Numero = new Scanner (System.in);
    System.out.println(“***********************************************”);
    System.out.println(“**D A T O S S O B R E C O N V E R T I R**”);
    System.out.println(“***********************************************”);
    System.out.print(“escribe una cantidad de pies que desea convertir:”);

    Pies=Numero.nextDouble();
    Centimetros=Pies*30.48;
    Pulgadas=Centimetros*0.39;
    Metros=Centimetros*0.01;
    Yardas=Metros*1.09;
    Metros=Yardas*0.91;

    System.out.print(“\nEl resultado en centimetros es: “);
    System.out.println(Centimetros);
    System.out.print(“\nEl resultado en pulgadas es: “);
    System.out.println(Pies);
    System.out.print(“\nEl resultado en yardas es: “);
    System.out.println(Yardas);
    System.out.print(“\nEl resultado en metros es: “);
    System.out.println(Metros);
    }

  10. luis osvaldo dice:

    este es el mismo con el de arriba nomas q estes el class este programa lo q hace convierta centigrados a f° y f° a centigrados

    class ClaseConv
    {
    public double CentToFahr(double C)
    {
    return (C*(9.0/5.0))+32.0;
    }
    public double FahrToCent(double F)
    {
    return ((F-32.0)*(5.0/9.0));

    }
    }

  11. seregio dice:

    mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm

  12. william dice:

    estoy intentanto hacer un calculo de interes compuesto y simple para ingresar por teclado utilisando frames alguien me podria dar el codigo en java por favor gracias..

  13. Manuel dice:

    weeeeeeeeee cuando uso el void paint no me sale ningun error pero cuando lo quiero ejecutar me dice que me falta el main donde lo puedo acomodar?????

¡Déjanos tu comentario!