Sentencia For

18
Estructuras de control en Java 1 Estructuras de control en Java

description

Sentencia For en java

Transcript of Sentencia For

Page 1: Sentencia For

Estructuras de control en Java 1

Estructuras de control en Java

Page 2: Sentencia For

Estructuras de control en Java 2

Estructuras de control Estructuras de control

Nos permite cambiar el orden de las declaraciones ejecutadas en nuestros programas.

Hay dos tipos de estructuras de control Estructuras de selección

Nos permite seleccionar secciones específicas del código para ser ejecutado, a partir de una condición.

Estructuras de iteración

Nos permite ejecutar secciones específicas del código una cantidad determinada de veces.

Page 3: Sentencia For

Estructuras de control en Java 3

Estructuras de iteración Estructuras de iteración

Nos permite ejecutar secciones específicas del código una cantidad determinada de veces..

Tipos: For while do-while

Page 4: Sentencia For

Estructuras de control en Java 4

BUCLE FORLa sentencia for me permite repetir un ciclo n veces, en donde se debe determinar el valor inicial y cuantas veces se repetirá.

También para ejecutar en forma repetida una serie de instrucciones; es un poco más complejo:

for ( instrucciones_iniciales; condición_booleana; instruccion_repetitiva_x ) {instrucciones…

}

Si bien las instrucciones pueden ser cualquiera (el bucle se repite mientras la condición sea verdadera), lo usual es utilizarlo para "contar" la cantidad de veces que se repiten las instrucciones; se podría indicar así:

for ( contador = valor_inicial; contador < valor_final; contador++ ) {instrucciones…

}

Page 5: Sentencia For

Estructuras de control en Java 5

Diagrama bucle for

inicialización

condición

bloque-o-instrucción

actualización

truefalse

Page 6: Sentencia For

Estructuras de control en Java 66

Syntax sentencia for

for ( i = 0 ; i < 20 ; i++ ) {

number = scanner.nextInt();sum = sum + number;

}

for ( <inicializacion>; <expresion booleana>; <incremento> ){

<sentencias> }Inicializacion Expresión

Booleana Incremento

Estas sentencias son ejecutadas 20 veces ( i = 0, 1, 2, … , 19).

Page 7: Sentencia For

Estructuras de control en Java 77

i++ or ++i?

for ( i = 0; i < 20; i++ ) { ...}

for ( i = 0; i < 20; ++i ) { ...}

Alguna diferencia?

Aqui es lo mismo…Solo cuando es partede una expresion..si son diferentes

Page 8: Sentencia For

Estructuras de control en Java 88

Mas ejemplos

for (int i = 0; i < 100; i += 5)1 i = 0, 5, 10, … , 95

for (int j = 2; j < 40; j *= 2)2 j = 2, 4, 8, 16, 32

for (int k = 100; k > 0; k--) )3k = 100, 99, 98, 97, ..., 1

Page 9: Sentencia For

Estructuras de control en Java 9

BUCLE FORPor ejemplo:

for ( i=0; i<10; i++ ) { JOptionPane.showMessageDialog(null,i); break;

} o,

para contar hacia atrás:

for ( i=10; I>0; I-- ) {JOptionPane.showMessageDialog(null,i); break;

}

Page 10: Sentencia For

Estructuras de control en Java 10

BUCLE FOR

package Confor;import javax.swing.JOptionPane;import javax.swing.JTextArea;public class Numeros {public static void main (String[] args){ int n; JTextArea areaTextoSalida = new JTextArea(); for(n=1;n<=10;n++){ areaTextoSalida.append( n + "\n" ); } JOptionPane.showMessageDialog(null, areaTextoSalida); }}

Page 11: Sentencia For

Estructuras de control en Java 11

BUCLE FOR

package Confor;import javax.swing.JOptionPane;import javax.swing.JTextArea;public class Ascdes {public static void main(String[] args) {

int a,d; JTextArea areaTextoSalida = new JTextArea();

for(a=1;a<=10;a++){ d = 11 - a; areaTextoSalida.append( a +"\t"+d+ "\n" ); } JOptionPane.showMessageDialog(null, areaTextoSalida); }}

Imprime los números del 1 al 10 y del 10 al 1

Page 12: Sentencia For

Estructuras de control en Java 12

BUCLE FOR

package Confor;import javax.swing.JOptionPane;import javax.swing.JTextArea;public class Ventabla {public static void main (String[] args){ int x,n,m; JTextArea areaTextoSalida = new JTextArea(); n=15; for(x=1;x<=12;x++){ m=n*x; areaTextoSalida.append( n + " * " + x + " = " + m+"\n"); } JOptionPane.showMessageDialog(null, areaTextoSalida); }}

Imprime la tabla de multiplicar del numero 15

Page 13: Sentencia For

Estructuras de control en Java 13

BUCLE FOR

Programa que permita el ingreso de un numero por teclado y que imprima la tabla de multiplicar del 1 al 12 de dicho numero

Page 14: Sentencia For

Estructuras de control en Java 14

BUCLE FOR

package Confor;import javax.swing.*;public class Venproducto {public static void main (String[] args){ int x,n,m; JTextArea areaTextoSalida = new JTextArea(); n=Integer.parseInt(JOptionPane.showInputDialog("Digite Numero ")); for(x=1;x<=12;x++){ m=n*x; areaTextoSalida.append( n + " * " + x + " = " + m+"\n"); } JOptionPane.showMessageDialog(null, areaTextoSalida); }}

Page 15: Sentencia For

Estructuras de control en Java 15

BUCLE FOR

Programa en la cual se debe ingresar un numero cualquiera luego el valor de inicio y el valor final e imprime la tabla de multiplicar de dicho numero

Para el ejemplo:

Numero ingresado: 60Valor inicial : 15Valor final : 30

Page 16: Sentencia For

Estructuras de control en Java 16

BUCLE FORpackage Confor;import javax.swing.JOptionPane;import javax.swing.JTextArea;public class Tablas{ public static void main (String[] args) { int num,i,f,r,n; JTextArea areaTextoSalida = new JTextArea(); num=Integer.parseInt(JOptionPane.showInputDialog("Ingrese Numero ")); i=Integer.parseInt(JOptionPane.showInputDialog("Ingrese Valor de Inicio ")); f=Integer.parseInt(JOptionPane.showInputDialog("Ingrese Valor Final ")); for(n=i;n<=f;n++){ r = num * n; areaTextoSalida.append( num + " * " + n + " = " + r+"\n"); } JOptionPane.showMessageDialog(null, areaTextoSalida,"Tabla del Numero "+num, JOptionPane.INFORMATION_MESSAGE); }}

Page 17: Sentencia For

Estructuras de control en Java 17

BUCLE FOR

Programa en la cual permita calcular e imprimir el interés compuesto de un monto de deposito de 1000$ al 5 % de interés en un tiempo de 10 años.

Page 18: Sentencia For

Estructuras de control en Java 18

BUCLE FORpackage Confor;import java.text.NumberFormat; // clase para el formato numéricoimport java.util.Locale; // clase para información específica de cada paísimport 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ñodouble principal = 1000.0; // cantidad inicial sin interesesdouble tasa = 0.05; // tasa de interés// crear NumberFormat para la moneda en dólaresNumberFormat formatoMoneda=NumberFormat.getCurrencyInstance(Locale.US );JTextArea areaTextoSalida = new JTextArea();areaTextoSalida.setText( "Año\tCantidad en depósito\n" );// calcular la cantidad en depósito para cada uno de los diez añosfor ( int año = 1; año <= 10; año++ ){ // calcular la nueva cantidad para el año especificado cantidad = principal * Math.pow( 1.0 + tasa, año ); areaTextoSalida.append(año+"\t"+formatoMoneda.format(cantidad)+"\n" );}JOptionPane.showMessageDialog( null, areaTextoSalida,"Interés compuesto", JOptionPane.INFORMATION_MESSAGE );} }