Python Tema2 Parte8 v3
Python Tema2 Parte8 v3
Conceptos básicos de
programación
Estructuras de control: condicionales y bucles
1
IBM SkillsBuild | Introducción a Python
Índice
Introducción 3
Condicionales 4
Estructura condicional simple: IF 4
Estructura condicional doble: IF – ELSE 5
Estructura condicional múltiple: IF - ELSEIF – ELSE 6
Bucles 8
Estructura de repetición indexada: FOR 8
2
IBM SkillsBuild | Introducción a Python
Introducción
• Condicionales
• Bucles
3
IBM SkillsBuild | Introducción a Python
Sí
Condición Instrucciones
No
...
if condición
...
En términos de un lenguaje de programación, que se
verifique o no una condición se traduce en que una Obsérvese que, en ambos casos (que se verifique o
(adecuada) expresión lógica tome el valor verdadero no la condición), los “caminos” bifurcados se unen
(TRUE) o tome el valor falso (FALSE). posteriormente en un punto, es decir, el flujo del
programa recupera su carácter secuencial, y se
En los casos más sencillos y habituales la condición
continúa ejecutando por la instrucción siguiente a la
suele ser una comparación entre dos datos, como por
estructura IF.
ejemplo: si a < b hacer una cosa y en caso contrario
hacer otra distinta. Como ejemplo de utilización de este tipo de
condicional, se considera el cálculo del valor en un
punto x de una función definida por partes, como por
ejemplo:
4
IBM SkillsBuild | Introducción a Python
Fin CALCULAR
2
D=B-4AC
A2=2A
En otras palabras, en este tipo de estructuras hay una Diagrama de flujo para determinar las raíces reales o
alternativa: se hace una cosa o se hace la otra. En complejas de la ecuación de segundo grado Ax2 + Bx
ambos casos, se sigue por la instrucción siguiente a + C = 0.
la estructura IF - ELSE. A continuación, se muestra el pseudocódigo
correspondiente.
...
Condición if
No
Sí
Bloque 1 Bloque 2
condición
bloque-1
else
bloque-2
...
5
IBM SkillsBuild | Introducción a Python
Cálculo de las raíces de la ecuación de segundo En cualquiera de los casos, el flujo del programa
grado Ax2 + Bx + C = 0, distinguiendo los casos de continúa por la instrucción siguiente a la estructura
raíces reales y complejas.
Inicio
6
IBM SkillsBuild | Introducción a Python
LEER a
LEER b
LEER S
Si S=’+’
Si no, si S=’-’
Si no, si S=’*’
Si no, si b=0
Si a=0
Si no
Si no
Fin Si Fin
7
IBM SkillsBuild | Introducción a Python
Bucles
En los bucles indeterminados no sabemos a ciencia
cierta cuántas veces se va a repetir un bucle, ya que
se estará repitiendo hasta que se cumpla una
condición que, a priori, no sabemos cuándo se
Permiten que se ejecute repetidamente un conjunto
cumplirá.
de instrucciones, bien un número pre-determinado
de veces, o bien hasta que se verifique una Por ejemplo, imprimir repetidamente en pantalla una
determinada condición. frase hasta que el usuario pulse una tecla para
detener el bucle.
8
IBM SkillsBuild | Introducción a Python
HACER suma=0
k = 1 Para i= 1, 3, 5, ..., 2*n-1 HACER suma=suma+i
Fin Para
k > N IMPRIMIR ’La suma vale : ’, suma
TRUE
FALSE Fin
Fin Si Fin
Para
El indice del bucle recorre los valores de un vector V
de longitud N. IMPRIMIR 1
9
IBM SkillsBuild | Introducción a Python
Estructura repetitiva
Imprimir de forma ascendente los 100 primeros
números naturales.
Condición
WHILE FALSE
Condición
TRUE WHILE FALSE
TRUE
Instrucciones-1
Instrucciones-1
TRUE
Condición
BREAK TRUE Condición
ruptura CONTINUE
ruptura
FALSE
FALSE
Instrucciones-2
Instrucciones-2
11
IBM SkillsBuild | Introducción a Python
Estructura de elección
entre varios casos: SWITCH
switch expresión
Valor
Expresión
12
IBM SkillsBuild | Introducción a Python
En cada uno de los casos, el valor correspondiente Dados dos números reales, a y b, y el símbolo, S
puede ser o bien un sólo valor, o bien un conjunto de (carácter), de un operador aritmético (+, -, *, /),
valores, en cuyo caso se indican entre llaves. La imprimir el resultado de la operación a S b
cláusula DEFAULT y su correspondiente conjunto de LEER a , b , S
instrucciones puede no estar presente.
Elegir caso S
El funcionamiento es el siguiente:
Caso ’+’
• Al comienzo se evalúa la expresión.
IMPRIMIR ’El resultado es =’, a+b
• Si expresión toma el valor (ó valores)
especificados junto a la primera cláusula CASE, se Caso ’-’
ejecuta el conjunto de instrucciones de este caso IMPRIMIR ’El resultado es =’, a-b
y después se abandona la estructura SWITCH,
Caso ’*’
continuando por la instrucción siguiente al END.
• Se repite el procedimiento anterior, de forma IMPRIMIR ’El resultado es =’, a*b
Elegir caso
13