PDF de programación - Tema 4 - Control de flujo

Imágen de pdf Tema 4 - Control de flujo

Tema 4 - Control de flujográfica de visualizaciones

Publicado el 24 de Enero del 2019
1.115 visualizaciones desde el 24 de Enero del 2019
384,8 KB
61 paginas
Creado hace 8a (08/10/2015)
Tema 4

Programación
2015-2016

Control de flujo

Programación - Tema 4: Control de Flujo

1

Tema 4. Control de flujo

● Introducción.

● Estructuras condicionales.

● Estructuras de repetición.

Programación - Tema 4: Control de Flujo

2

¿Qué es el flujo de un programa?
 Es el orden en que se ejecutan las instrucciones de un

programa

 El orden normal es instrucción por instrucción, es decir en

secuencia.

 El bloque permite esta ejecución secuencial
 Un bloque contiene las instrucciones entre las llaves:

{

}

sentencia 1;
sentencia 2;
sentencia 3;


Programación - Tema 4: Control de Flujo

3

Modificando el flujo de un programa

 En Java, se puede modificar el flujo secuencial

mediante las estructuras de control:
 Estructuras condicionales: un bloque sólo se

ejecuta bajo ciertas condiciones

 Estructuras de repetición: un mismo bloque se

ejecuta repetidamente

 Ejemplos:

 Escribir un mensaje de saludo si encuentras el

nombre de una persona

 Escribir “¡Programación!” 10 o 100 o 1000 veces

Programación - Tema 4: Control de Flujo

4

Interacción con el usuario

Salida: Escribir en la pantalla
System.out.println("Hola");

Entrada: Leer del teclado
import java.util.Scanner
...
Scanner teclado = new Scanner(System.in);
...
String nombre = teclado.nextLine();
int horas = teclado.nextInt();
double precio = teclado.nextDouble();

Programación - Tema 4: Control de Flujo

5

Tema 4. Control de flujo

● Introducción.

● Estructuras condicionales.

● Estructuras de repetición.

Programación - Tema 4: Control de Flujo

6

Instrucciones condicionales

• if

• if-else

• if-else-if

• switch

• El operador ?:

Programación - Tema 4: Control de Flujo

7

Instrucción if

Diagrama de flujo

Sintaxis:

condición

true

false

bloque-o-sentencia

if (<condición>){

<bloque-o-sentencia>

. . . . . . .

}

Programación - Tema 4: Control de Flujo

8

Ejercicios

 Determinar si un número es divisible por otro (el

resultado de la división es un entero)

 Dados dos números si el primer número es
divisible por el segundo, mostrar el cociente en la
pantalla

Programación - Tema 4: Control de Flujo

9

Determinar si un número es divisible por otro
(el resultado de la división es un entero)

Programación - Tema 4: Control de Flujo

10

Dados dos números si el primer número es divisible por el
segundo, mostrar el cociente en la pantalla

Programación - Tema 4: Control de Flujo

11

Instrucción if- else

condición

true

false

bloque1-o-sentencia1

bloque2-o-sentencia2

Sintaxis: if (<condición>){

}
else{

<bloque1-o-sentencia1>

<bloque2-o-sentencia2>

}

Programación - Tema 4: Control de Flujo

12

Ejercicio

 Comprobar si un número entero está dentro del

intervalo [-128, …, 127], y:
 Si es cierto, escribir que el número es un byte
 En caso contrario, mostrar mensaje de error

Programación - Tema 4: Control de Flujo

13

Comprobar si un número entero está dentro del intervalo [-128, …, 127], y: Si es cierto,
escribir que el número es un byte. En caso contrario, mostrar mensaje de error

Programación - Tema 4: Control de Flujo

14

Instrucción if- else - if

Sintaxis:

if (<condición_1>)


<bloque-o-sentencia_1>



else if (<condición_2>)

<bloque-o-sentencia_2>
...

else if (<condición_I>)

<bloque-o-sentencia_I>

else

<bloque-o-sentencia_N>

Programación - Tema 4: Control de Flujo

15

Instrucción if- else - if

 Si no hay llaves, cada else siempre está asociado

con el if más cercano

 Ejemplo: comprobar si los números x e y son

mayores que 0

Programación - Tema 4: Control de Flujo

16

Instrucción if- else - if

if (x > 0)
if (y > 0)
System.out.println(“Ambos son mayores que 0");
else
System.out.println(“Alguno no es mayor que 0");

if (x > 0) {
if (y > 0){
System.out.println(“Ambos son mayores que 0");

}
else {

System.out.println(“Alguno no es mayor que 0");


}

}

Programación - Tema 4: Control de Flujo

17

Instrucción if- else - if

if (x > 0) {
if (y > 0)
System.out.println(“Ambos son mayores que 0");
}
else
System.out.println(“Alguno no es mayor que 0");

if (x > 0) {
if (y > 0) {
System.out.println(“Ambos son mayores que 0");

}

}
else {
System.out.println(“Alguno no es mayor que 0");
}

Programación - Tema 4: Control de Flujo

18

Ejercicios

 Determinar si un número es positivo, negativo o cero

 Comprobar si un carácter es un dígito, una letra

mayúscula o una letra minúscula

Código ASCII de:
 dígito: 48 – 57
 letra mayúscula: 65 – 90
 letra minúscula: 97 – 122

Programación - Tema 4: Control de Flujo

19

Determinar si un número es positivo, negativo o cero

Programación - Tema 4: Control de Flujo

20

Comprobar si un carácter es un dígito, una letra mayúscula o una
letra minúscula

Programación - Tema 4: Control de Flujo

21

Instrucción switch

 A menudo

la condición de un if-else-if

depende de una sola variable de tipo primitivo

 Tipos primitivos = palabras reservadas; por

ejemplo byte, int, double pero no String

 En este caso se puede utilizar otra instrucción

llamada switch

 Es más compacto que un if-else-if

Programación - Tema 4: Control de Flujo

22

Instrucción switch

Sintaxis:

switch (<selector>) {

case <etiqueta_1>:

<sentencias1>;

break;

case <etiqueta_2>:

break;

<sentencias2>;

...
case <etiqueta_n>:

<sentenciasn>;

break;

default:

}

<sentenciasD>; // opcional

Programación - Tema 4: Control de Flujo

23

Ejercicio

 Leer un número entero entre 1 y 10. Después

mostrar ese número escrito en números romanos

Programación - Tema 4: Control de Flujo

24

Leer un número del 1 al 10 y mostrarlo en números romanos

Programación - Tema 4: Control de Flujo

25

¿Qué pasa si excluimos break?

 ¡El programa pasa a la siguiente instrucción

dentro del switch!

 La función de break es cambiar el control de flujo

Programación - Tema 4: Control de Flujo

26

El operador ?:

• Es el único operador ternario en Java (requiere
• Sintaxis:

tres operandos)

<operando1> ? <operando2> : <operando3>

• operando1 tiene que ser una condición
• operando2 y operando3 pueden ser expresiones

de cualquier tipo siempre que sean los dos del
mismo tipo

• El resultado de la expresión es

operando2 si operando1 es true
operando3 si operando1 es false

Programación - Tema 4: Control de Flujo

27

Palabras reservadas

inicio de programa

método ‘main’

class
public, static, void
byte, short, int, long enteros
reales
float, double
caracteres
char
tipo Booleano
boolean
literales Booleanos
true, false
instrucción condicional
if, else, switch
case, break, default

partes de switch



Programación - Tema 4: Control de Flujo

28

Ejercicio

S3-Clase: Condicionales

Programación - Tema 4: Control de Flujo

29

Tema 4. Control de flujo

● Introducción.

● Estructuras condicionales.

● Estructuras de repetición.

Programación - Tema 4: Control de Flujo

30

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
– 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)

Programación - Tema 4: Control de Flujo

31

Estructuras de repetición

While

do-while

for

Programación - Tema 4: Control de Flujo

32

Bucle while

Diagrama de flujo

Sintaxis java:

condición

while (<condición>){

true

false

<bloque-o-sentencia>

bloque-o-sentencia

}


Programación - Tema 4: Control de Flujo

33

Condición de while

 La condición de un while sirve para determinar

cuando debe terminar el bucle

 ¡Si la condición siempre se cumple (true), el bucle

while nunca termina! (bucle infinito)

 En consecuencia, algo en la condición tiene que

cambiar

 Cada bucle necesita una variable que aparezca en

la condición y cuyo valor cambie en cada pasada

 Hay que inicializar el valor de la variable de bucle y

actualizar su valor dentro del bucle

Programación - Tema 4: Control de Flujo

34

Ejemplo 1

int contador = 1; // inicialización
while (contador < 6) { // condición

System.out.println(contador);
contador++;

// actualización

}

Programación - Tema 4: Control de Flujo

35

Ejemplo 2

int contador = 1; // inicialización
while (contador < 0) { // condición

System.out.println(contador);
contador--;

// actualización

}

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

false desde el principio

Programación - Tema 4: Control de Flujo

36

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

Programación - Tema 4: Control de Flujo

37

Ejemplo 4

int contador = 1; // inicialización
while (contador < 6) // condición

System.out.println(contador);
contador++;

// actualización

El bucle nunca termina porque el valor de la variable de

bucle no se actualiza dentro del bucle

Programación - Tema 4: Control de Flujo

38

Ejercicio

 Escribir ¡Bienvenidos! en la pantalla 10 veces

Programación - Tema 4: Control de Flujo

39

Escribir ¡Bienvenidos! en la pantalla 10 veces

public class Bienvenidos {

public static void main(String[] args) {

int contador = 0;
while (contador < 10) {

System.out.println("Bienvenidos");
contador++;

}

}

}

Programación - Tema 4: Control de Flujo

40

Ejercicio

 ¿Cuál es el valor de la variable x después de ejecutar el

si
  • Links de descarga
http://lwp-l.com/pdf14965

Comentarios de: Tema 4 - Control de flujo (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad