6 Sentenciasrepetitivasobucles

Páginas: 6 (1316 palabras) Publicado: 11 de mayo de 2015
 Programación orientada a objetos con Java

71

6. Sentencias repetitivas o bucles
Objetivos:
a) Describir el funcionamiento de las sentencias iterativas o bucles (for, while y dowhile)
b) Interpretar el resultado de una secuencia simple o combinada de sentencias de
control
c) Codificar una tarea sencilla convenientemente especificada, utilizando la
secuencia y combinación de sentenciasiterativas y condicionales
Los bucles, iteraciones o sentencias repetitivas modifican el flujo secuencial de un programa
permitiendo la ejecución reiterada de una sentencia o sentencias. En Java hay tres tipos diferentes de
bucles: for, while y do-while.

6.1. Sentencia for
Es un bucle o sentencia repetitiva que
i)
ejecuta la sentencia de inicio
ii)
verifica la expresión booleana de término.
a. si escierta, ejecuta la sentencia entre llaves y la sentencia de iteración para volver a
verificar la expresión booleana de término
b. si es falsa, sale del bucle.

Figura 6.1. Flujograma de la sentencia for

Sintaxis:
for (inicio; termino; iteracion)
sentencia;

72

 A. García-Beltrán y J.M. Arranz

o si se desean repetir varias sentencias:
for (inicio; termino; iteracion) {
sentencia_1;
sentencia_2;sentencia_n;
}

Las llaves sólo son necesarias si se quieren repetir varias sentencias, aunque se recomienda su
uso porque facilita la lectura del código fuente y ayuda a evitar errores al modificarlo.
Habitualmente, en la expresión lógica de término se verifica que la variable de control alcance un
determinado valor. Por ejemplo:
for (i = valor_inicial; i <= valor_final; i++) {
sentencia;
}

Escompletamente legal en Java declarar una variable dentro de la cabecera de un bucle for.
De esta forma la variable (local) sólo tiene ámbito dentro del bucle. Ejemplo sencillo:
System.out.println("Tabla de multiplicar del 5");
for (int i =0 ; i <= 10; i++) {
System.out.println(5 + " * " + i + "
= " + 5*i );
}

Salida por pantalla al ejecutar el código anterior:
5
5
5
5
5
5
5
5
5
5
5

*
*
*
*
*
*
*
**
*
*

0 = 0
1 = 5
2 = 10
3 = 15
4 = 20
5 = 25
6 = 30
7 = 35
8 = 40
9 = 45
10 = 50

A continuación se muestra un ejemplo completo de un programa que visualiza la tabla de
multiplicar del valor numérico entero introducido como parámetro de la línea de ejecución:
/**
* TablaProducto: Ejemplo de sentencia for
* Visualiza la tabla de multiplicar del valor introducido
* como parametro en la linea decomandos
* A. Garcia-Beltran, 16 de marzo de 2004
*/
public class TablaProducto {
public static void main (String [] args) {
int valor;
valor = Integer.parseInt(args[0]);
System.out.println("Tabla de multiplicar del numero " + valor);
for (int i=1; i<=10; i++) {
System.out.println(valor + " * " + i + " = " + valor*i );
}
}

 Programación orientada a objetos con Java

}

Salida por pantalla alejecutar: $>java TablaProducto 4
Tabla de multiplicar del numero 4
4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
4 * 4 = 16
4 * 5 = 20
4 * 6 = 24
4 * 7 = 28
4 * 8 = 32
4 * 9 = 36
4 * 10 = 40

Puede incluirse un bucle for dentro de otro (bucles for anidados), por ejemplo:
System.out.println("Tablas de multiplicar del 1, 2 y 3");
for (int i=1; i<=3; i++) {
System.out.println("Tabla de multiplicar del " + i);
for (intj=0; j<=10; j++) {
System.out.println(j + " * " + i + " = " + j*i );
}
}

O como en el siguiente programa completo:
/**
*
*
*
*
*/

Doblefor: Ejemplo de sentencias for anidadas
Visualiza por pantalla una cadena que almacena
valores numericos enteros
A. Garcia-Beltran, 16 de marzo de 2004

public class Doblefor {
public static void main (String [] args ) {
String s="";
for (int i=0 ; i<10; i++) {s=s+i+" ";
for (int j=0 ; j<10; j++) {
s=s+" "+i+j;
}
s=s+"\n";
}
System.out.println(s);
}
}

Salida por pantalla al ejecutar: $>java DobleFor
0
1
2
3
4
5
6
7
8
9

00
10
20
30
40
50
60
70
80
90

01
11
21
31
41
51
61
71
81
91

02
12
22
32
42
52
62
72
82
92

03
13
23
33
43
53
63
73
83
93

04
14
24
34
44
54
64
74
84
94

05
15
25
35
45
55
65
75
85
95

06
16
26
36
46
56
66
76
86
96

07
17
27
37
47...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • 6
  • 6
  • 6
  • 6
  • 6
  • 6
  • 6
  • 6

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS