Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


programacion- tema4, Apuntes de Informática

Asignatura: Programación I, Profesor: , Carrera: Ingenieria Informática + ADE, Universidad: UC3M

Tipo: Apuntes

2015/2016

Subido el 07/03/2016

javito93-2
javito93-2 🇪🇸

4 documentos

1 / 14

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Tema 4
Control de flujo: Bucles
Programación
2011-2012
Repetición
A veces hay que ejecutar la misma operación más de una
vez
Ejemplos:
Escribir ¡Bienvenidos! en la pantalla 10 o 100 o 1000 veces
Escribir todas las letras del abecedario en la pantalla
2
Escribir todas las letras del abecedario en la pantalla
Sumar los gastos anuales de una empresa
En cada caso, se pueden escribir las mismas instrucciones
secuencialmente (esto es muy ineficaz)
En cambio podemos usar bucles (estructuras de
repetición)
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Vista previa parcial del texto

¡Descarga programacion- tema4 y más Apuntes en PDF de Informática solo en Docsity!

Tema 4

Control de flujo: Bucles

Programación

Repetición

 A veces hay que ejecutar la misma operación más de una vez  Ejemplos:  Escribir ¡Bienvenidos! en la pantalla 10 o 100 o 1000 veces  Escribir todas las letras del abecedario en la pantalla  Escribir todas las letras del abecedario en la pantalla  Sumar los gastos anuales de una empresa  En cada caso, se pueden escribir las mismas instrucciones secuencialmente (esto es muy ineficaz)  En cambio podemos usar bucles (estructuras de repetición)

Estructuras de repetición

 While

 do-while

for

3

 for

Bucle while

Sintaxis java: while (<condición>) <bloque-o-sentencia>

condición

bloque-o-sentencia

true false

Ejemplo 2

int contador = 1; // inicialización while (contador < 0) { // condición System.out.println(contador); contador--; // actualización }

7

Nunca se entra en el bucle porque la condición es false desde el principio

Ejemplo 3

int contador = 1; // inicialización while (contador != 10) {// condición System.out.println(contador); contador += 2; // actualización } }

El bucle nunca termina porque la condición nunca llega a ser false

Ejemplo 4

int contador = 1; // inicialización while (contador < 6) // condición System.out.println(contador); contador++; // actualización

9

El bucle nunca termina porque el valor de la variable de bucle no se actualiza dentro del bucle

Ejercicio

 Escribir ¡Bienvenidos! en la pantalla 10 veces

Bucle do-while

Sintaxis java: do <bloque-o-sentencia> while (<condición>);

13

condición

true

false

bloque-o-sentencia

Bucle do-while

 La diferencia entre un bucle while y un

bucle do-while es que el bloque del do-

while siempre se ejecuta por lo menos una

vez

 La condición se prueba al final del bucle

 Siempre se puede convertir en un while,

pero hay casos en que el do-while es más

compacto

Ejercicio

 Introducir un número entero entre 0 y 10  Mientras que el número esté fuera del rango indicado, introducir un número de nuevo

15

Bucle for

 Sintaxis java: for (<inicialización>;<condición>;<actualización>) <bloque-o-sentencia>

inicialización

condición

bloque-o-sentencia

actualización

false^ true

Bucle for

 for (inicialización; condición ; actualización) sentencia;  En inicialización y actualización se pueden poner varias variables separadas por comas  inicializacióninicialización yy actualizaciónactualización no tienen porquéno tienen porqué compartir variables, aunque es lo habitual (lo útil)  Se considera mala práctica modificar los valores de las variables de control dentro del bucle.  Cualquiera de las tres expresiones puede faltar, pero mantenemos los puntos y coma.  Si condición no existe: bucle infinito.

Bucle for

 Tiempo de vida de variables usadas en el for:

 Si declaramos dentro, la variable sólo existe ahí. for (int a=0; a<10; a++) System.out.println(a);

 Si declaramos fuera, cualquier cambio dentro afecta a la variable. int a; for (a=0; a<10; a++) System.out.println(a);

 Ejemplos de uso de inicialización:

for (int a=0;...) int a; int a=0; for (a=0;...) for ( a;...)

Bucle for

 Si en inicialización declaramos las variables, TODAS tienen que ser del mismo tipo (no vale for(int a, double b;…) for(int i=0, j=0, k=0; i+j<10; i++, j++) k=i+j;k=i+j;

 Pero si están declaradas fuera, sí se puede dar valor a variables de distinto tipo. int i; float j, k; for(i=0, j=0; i+j<10; i++, j++) k=i+j;

Bucle for

 Es equivalente a un bucle while  Como en el caso de do-while, muchas veces un bucle for es más compacto que un while

break y continue

  • Son dos instrucciones que cambian el control de flujo dentro de un bucle
  • break: origina la salida del bucle

: continua dentro del bucle sin ejecutar las

25

  • continue: continua dentro del bucle sin ejecutar las demás instrucciones
  • Se deben usar con cuidado

Ejemplo

int a = 5; for (int i = 1; i <= 10; i++) { if (i % 2 == 0) continue; a = a + i; a = a + i; if (a > 20) break; }

Métodos de String

 A una variable de tipo String se pueden aplicar varios métodos:

String s = “¡Hola Mundo!”; int longitud = s.length(); // longitud 12

27

int longitud = s.length(); // longitud 12 char c = s.charAt(1); // carácter H

 La longitud se puede usar para recórrer los carácteres de la cadena

Recorrer un String

String s = “¡Hola Mundo!”; int i = 0; while (i < s.length()) { System.out.println(s.charAt(i)); i++; i++; }

 ¿Qué pasa si inicializamos i = 1 y cambiamos la condición del bucle por i <= s.length()?