4 Print, If, While en Python
4 Print, If, While en Python
03/01/2023 PROGRAMACIÓN 1
Sentencia Print
Una sentencia print puede mostrar mas de un resultado en una misma línea, basta con separar
con comas todos los valores que deseamos mostrar y Cada una de las comas se traduce en un
espacio de separación.
Ejemplo:
03/01/2023 PROGRAMACIÓN 2
Si la línea a imprimir es muy larga se puede separar al dejar una coma entre los
valores a imprimir. ejemplo:
03/01/2023 PROGRAMACIÓN 3
03/01/2023 PROGRAMACIÓN 4
Salida con formato
▪Con la sentencia print podemos controlar hasta cierto punto la
apariencia de la salida.
03/01/2023 PROGRAMACIÓN 5
Operador % con print
▪El operador % en el comando print permite controlar con absoluta precisión la salida.
Sintaxis:
print (“cadena de texto” % (valor, valor, valor))
03/01/2023 PROGRAMACIÓN 6
Ejemplo con %d :
03/01/2023 PROGRAMACIÓN 7
Salida con marca %d - números enteros
▪Cada marca de formato %d en la cadena “%d elevado a %d es %d” ha sido
sustituida por un numero entero. El fragmento %d significa ((aquí va un numero
entero)).
▪¿Qué número? El que resulta de evaluar cada una de las tres expresiones que
aparecen separadas por comas y entre paréntesis a la derecha del operador %.
03/01/2023 PROGRAMACIÓN 8
Ejemplo 2 con %d
numero = int(input("Dame un número: "))
print ("%d elevado a %d es %4d" % (numero, 2, numero ** 2))
print ("%d elevado a %d es %4d" % (numero, 3, numero ** 3))
print ("%d elevado a %d es %4d" % (numero, 4, numero ** 4))
print ("%d elevado a %d es %4d" % (numero, 5, numero ** 5))
▪El fragmento %4d significa ((aquí va un entero que representaré ocupando 4
casillas)). Si el número entero tiene 4 o menos dígitos, Python lo representa
dejando delante de él los espacios en blanco para que ocupe exactamente 4
espacios.
▪Si tiene más de 4 dígitos, no podrá cumplir con la exigencia impuesta, pero seguirá
representando el numero entero correctamente.
03/01/2023 PROGRAMACIÓN 9
Operador %f - Números flotantes
▪La marca %f indica que la salida se expresara como un
número flotante, podemos delimitar el tamaño del numero
flotante y el numero de decimales a representar. Ejemplo:
03/01/2023 PROGRAMACIÓN 10
Salida con marca %s – cadenas de texto
▪%s es una marca para cadenas de texto, y permite controlar el
numero de caracteres a mostrar, igual que la marca %f.
Ejemplo:
#ejercicio 3
nombre = input("Tu nombre: ")
print ("Hola, %s" % (nombre))
#Opcion 2:
nombre = input("Tu nombre: ")
print ("Hola, %6.4s" % (nombre))
03/01/2023 PROGRAMACIÓN 11
INSTRUCCIONES DE CONTROL
03/01/2023 PROGRAMACIÓN 12
INSTRUCCIONES DE CONTROL
03/01/2023 PROGRAMACIÓN 13
Tanto los condicionales como los ciclos contienen a otras instrucciones. Para
indicar esta relación se utiliza la tabulación: las instrucciones contenidas no se
escriben en la misma columna que la sentencia de control, sino un poco más a la
derecha, ejemplo:
n = int(input(“n=”))
m = int(input(“m=”))
if m < n:
t=m
m=n
n=t
print (m, n)
03/01/2023 PROGRAMACIÓN 14
Ciclos Anidados
Como su nombre lo dice, hay problemas en los cuales es necesario utilizar una estructura
repetitiva dentro de otra estructura repetiva. Sintaxis general:
ciclo:
ciclo:
ciclo:
...
Y en Python:
while condicion:
while condicion:
while condicion:
instrucciones
...
03/01/2023 PROGRAMACIÓN 15
ESTRUCTURA CONDICIONAL IF
La sentencia if («si») ejecuta las instrucciones sólo si se cumple una
condición. Si la condición es falsa, no se hace nada:
03/01/2023 PROGRAMACIÓN 16
La sintaxis en Python 3 es la siguiente:
if condición:
sentencias
03/01/2023 PROGRAMACIÓN 17
ejemplo
▪Escriba un programa que pida al usuario ingresar sus tres notas, y lo felicite si su promedio es
mayor a 8.
Nota 1: 4,5
Nota 2: 7,8
Nota 3: 6,8
Su promedio es 6,4
Nota 1: 7,9
Nota 2: 9,1
Nota 3: 7,4
Felicitaciones!
Su promedio es 8,1
03/01/2023 PROGRAMACIÓN 18
Solución:
n1 = float(input("Nota 1: "))
n2 = float(input("Nota 2: "))
n3 = float(input("Nota 3: "))
suma = n1 + n2 + n3
promedio = suma / 3.0
03/01/2023 PROGRAMACIÓN 19
CONDICIONAL IF-ELSE
La sentencia if-else (((si-o-sino))) decide que instrucciones ejecutar
dependiendo si una condición es verdadera o falsa:
03/01/2023 PROGRAMACIÓN 20
La sintaxis es la siguiente:
if condición:
que hacer cuando la condición es verdadera
else:
que hacer cuando la condición es falsa
03/01/2023 PROGRAMACIÓN 21
Ejemplo 2
El siguiente programa realiza acciones distintas dependiendo de si el número de entrada es par
o impar:
n = int(input("Ingrese un numero: "))
if n % 2 == 0:
print ("El numero es par" )
print ("La mitad del numero es", n / 2 )
else:
print ("El numero es impar" )
print ("El sucesor del numero es", n + 1 )
print ("Listo“)
La última sentencia no está tabulada, por lo que no es parte del condicional, y será ejecutada
siempre.
03/01/2023 PROGRAMACIÓN 22
Ejemplo 3
Escriba un programa que pida al usuario ingresar sus tres notas, e indique si reprobo o
aprobo.
Nota 1: 7,0
Nota 2: 2,5
Nota 3: 3,9
Usted reprobo con 4,5
Nota 1: 7,0
Nota 2: 8,0
Nota 3: 7,5
Usted aprobo con 7,5
03/01/2023 PROGRAMACIÓN 23
solución
n1 = float(input("Nota 1: "))
n2 = float(input("Nota 2: "))
n3 = float(input("Nota 3: "))
suma = n1 + n2 + n3
promedio = suma / 3.0
03/01/2023 PROGRAMACIÓN 24
CONDICIONAL IF-ELIF-ELSE
03/01/2023 PROGRAMACIÓN 25
La sintaxis es la siguiente:
if condición1:
qué hacer si condición1 es verdadera
elif condición2:
qué hacer si condición2 es verdadera
elif condición3:
qué hacer si condición3 es verdadera
...
else:
qué hacer cuando ninguna de las
condiciones anteriores es verdadera
Por ejemplo, la tasa de impuesto a pagar por una persona según su sueldo
puede estar dada por la tabla
03/01/2023 PROGRAMACIÓN 27
Opción1 de solución:
sueldo = int(input("Ingrese su sueldo: "))
if sueldo < 1000:
tasa = 0.00
elif sueldo < 2000:
tasa = 0.05
elif sueldo < 4000:
tasa = 0.10
else:
tasa = 0.12
print ("Usted debe pagar", tasa * sueldo, "de impuesto“)
Siempre sólo una de las alternativas será ejecutada. Apenas una de las condiciones es verdadera, el
resto de ellas no son evaluadas o ejecutadas.
03/01/2023 PROGRAMACIÓN 28
Opción 2 de solución:
sueldo = int(input("Ingrese su sueldo: "))
if sueldo < 1000:
tasa = 0.00
if sueldo>=1000 and sueldo<2000:
tasa = 0.05
if 2000 <= sueldo < 4000:
tasa = 0.10
if 4000 < sueldo:
tasa = 0.12
print ("Usted debe pagar", tasa * sueldo, "de impuesto“)
Esta manera es menos clara, porque no es evidente a primera vista que sólo una de las condiciones
será verdadera.
03/01/2023 PROGRAMACIÓN 29
Conclusión:
▪ Las estructuras condicionales nos permiten realizar
labores diferentes dependiendo si se cumple alguna
condición.
▪ La tabulación/sangría indica que elementos se realizan al
cumplir una condición. Este proceso se llama
Indentación.
▪ Una estructura condicional tiene al if como instrucción
obligatoria.
▪ Las instrucciones elif y else son opcionales. Si son
utilizadas, siempre irán en compañía de un if.
03/01/2023 PROGRAMACIÓN 30
Sentencias Cíclicas
Permiten realizar un conjunto instrucciones reiterativamente. Esta reiteración puede:
CICLO WHILE
▪El ciclo while ejecuta una secuencia de instrucciones mientras una condición sea
verdadera.
03/01/2023 PROGRAMACIÓN 31
Estructura de comparación WHILE
▪El ciclo while («mientras») ejecuta una secuencia de instrucciones mientras una
condición sea verdadera ((Mientras se cumpla esta condición, repite estas acciones.))
▪Cada una de las veces que el cuerpo del ciclo es ejecutado se llama iteración o bucle.
▪La condición es evaluada antes de cada iteración. Si la condición es inicialmente falsa,
el ciclo no se ejecutará ninguna vez.
03/01/2023 PROGRAMACIÓN 32
La sintaxis es la siguiente:
while condición:
sentencias mientras la condición sea verdadera
acción
…
acción
Por ejemplo, el siguiente programa imprime números hasta dejar de cumplir la condición
(contador simple).
i=0
while i<=10:
print i
i=i+1
print (" FIN“)
03/01/2023 PROGRAMACIÓN 33
Bucle o repetición sin fin
Los bucles son muy útiles a la hora de hacer programas, pero también son peligrosos, si no se
hace con cuidado es posible que no finalicen nunca.
Bucle infinito:
i=0
while i>=0:
print i
i=i+1
print (" FIN“)
03/01/2023 PROGRAMACIÓN 34
Uso de Ciclos
¿Necesito usar un ciclo?
03/01/2023 PROGRAMACIÓN 35
1b. Escriba un programa que calcule el promedio las notas del certamen 1 de un paralelo de IWI131. (Nótese que
generalmente los paralelos no tienen la misma cantidad de alumnos)
03/01/2023 PROGRAMACIÓN 36
1c. Escriba un programa que calcule el promedio las notas de varios alumnos. Se ingresarán notas hasta que se
ingrese el valor -1.
Ingrese nota: 40
Ingrese nota: 50
Ingrese nota: 60
Ingrese nota: -1
El promedio es: 50
03/01/2023 PROGRAMACIÓN 37
Ejercicios en clase:
1. Cree un contador que imprima los números pares que existen desde el 2 al
100.
03/01/2023 PROGRAMACIÓN 38
Ejemplo: Ejercicio
/Pseudocodigo: #Codigo fuente
inicio Ni=int(input("Nro inicial="))
Definir : numero, Suma Nf=int(input("Nro final="))
Suma ← 0
numero ← 2 suma=0
mientras (numero <= 100) numero=Ni
hacer
suma ← suma + numero while Ni<=Nf:
numero ← numero + 2 suma=suma + numero
fin mientras numero=numero+2
print ("La suma es=",suma)
escribir (Suma)
fin
03/01/2023 PROGRAMACIÓN 39
Opción 2: controlando que siempre se sumen impares.
a=int(input("INGRESE EL NUMERO INICIAL:")) #caso contrario seria impar y realiza programa normal.
else:
b=int(input("INGRESE EL NUMERO FINAL:"))
while a<=b:
suma=0 suma=suma+a
a=a+2
#Si el primer numero es par, suma 1 para hacerlo impar
print (suma)
if a%2==0:
a=a+1
while a<=b:
suma=suma+a
a=a+2
03/01/2023 PROGRAMACIÓN 40
Taller 5
1. En un documento de word colocar los datos personales (nombre, fecha y
grupo) y realizar lo siguiente para cada programa de su grupo:
◦ Enunciado o descripción del programa a hacer.
◦ Capturas del Código fuente de Python y funcionamiento.
◦ Escribir una conclusión o análisis del funcionamiento de cada programa.
03/01/2023 PROGRAMACIÓN 41
Programa 1
Usando condicionales if:
El riesgo de que una persona sufra enfermedades coronarias depende de su edad y
su índice de masa corporal:
Escriba un programa que reciba como entrada la estatura, el peso y la edad de una
persona, y le entregue su condición de riesgo.
03/01/2023 PROGRAMACIÓN 42
Programa 2
Usando el ciclo WHILE realizar un programa que muestre la tabla de multiplicar del
1 al 10 del número ingresado por el usuario:
Ingrese un numero: 9
Los multiplos de 9 son:
9x1=9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
9 x 10 = 90
03/01/2023 PROGRAMACIÓN 43
Deber
1. En un documento PDF colocar nombre, fecha y grupo y realizar lo siguiente
para cada programa:
◦ Enunciado o descripción del programa a hacer.
◦ Pseudocódigo, diagrama de flujo en Pseint y funcionamiento.
◦ Código fuente de Python y funcionamiento.
◦ Escribir una conclusión o análisis del funcionamiento de cada programa.
03/01/2023 PROGRAMACIÓN 44
Programa 1
División, usando condicional IF
Escriba un programa que pida dos números enteros y que calcule la división, indicando si la división es
exacta o no.
Dividendo: 14
Divisor: 5
La división no es exacta.
Cociente: 2
Residuo: 4
Dividendo: 100
Divisor: 10
La división es exacta.
Cociente: 10
Residuo: 0
03/01/2023 PROGRAMACIÓN 45
Programa 2
Usando el ciclo WHILE,
Escriba un programa que genere todas las potencias de 2, desde la 0-
ésima hasta la ingresada por el usuario:
Ejemplo:
Ingrese un numero: 10
Las potencias de 2 desde 0 a 10 son:
1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024
03/01/2023 PROGRAMACIÓN 46