0% encontró este documento útil (0 votos)
15 vistas23 páginas

2 Python - Sentencias

El documento presenta conceptos básicos de programación estructurada en Python, incluyendo la impresión de datos, lectura de datos desde teclado y el flujo del programa. Se abordan sentencias condicionales e iterativas, así como ejemplos prácticos de su uso. Además, se incluyen ejercicios para aplicar los conceptos aprendidos.

Cargado por

diegofala2531
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
15 vistas23 páginas

2 Python - Sentencias

El documento presenta conceptos básicos de programación estructurada en Python, incluyendo la impresión de datos, lectura de datos desde teclado y el flujo del programa. Se abordan sentencias condicionales e iterativas, así como ejemplos prácticos de su uso. Además, se incluyen ejercicios para aplicar los conceptos aprendidos.

Cargado por

diegofala2531
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Presentación de datos por pantalla

Lectura de datos desde teclado


Flujo del programa

Python: programación estructurada


sentencias simples

Amparo Varona Fernández


Departamento de Electricidad y Electrónica
Facultad de Ciencia y Tecnologı́a, UPV/EHU
[email protected]

septiembre-diciembre

1/23
AVF Programación estructurada
Presentación de datos por pantalla
Lectura de datos desde teclado
Flujo del programa

Indice

1. Presentación de datos por pantalla

2. Lectura de datos desde teclado

3. Flujo del programa


3.1. sentencias condicionales
3.2. sentencias iterativas

2/23
AVF Programación estructurada
Presentación de datos por pantalla
Lectura de datos desde teclado
Flujo del programa

Imprimir datos por pantalla


En Python se imprime por pantalla mediante al función print
>>> help ( print )
Help on built - in function print in module builtins :

print (...)
print ( value , ... , sep = ’ ’ , end = ’\ n ’ , file = sys .
stdout )

Prints the values to a stream , or to sys . stdout by


default .
Optional keyword arguments :
file : a file - like object ( stream ) ; defaults to the
current sys . stdout .
sep : string inserted between values , default a
space .
end : string appended after the last value ,
default a newline .
3/23
AVF Programación estructurada
Presentación de datos por pantalla
Lectura de datos desde teclado
Flujo del programa

Imprimir datos por pantalla

>>> a =4
>>> print ( " el resultado es : " ,a )
el resultado es : 4
>>> print ( " el resultado es " , a , sep = ’= ’)
el resultado es =4
>>> print ( int )
< class ’ int ’ >
>>> print ( abs )
< built - in function abs >
>>> print (3==4)
False
>>> print ( a ==4)
True
>>>

4/23
AVF Programación estructurada
Presentación de datos por pantalla
Lectura de datos desde teclado
Flujo del programa

Lectura de datos

>>>
>>> print ( " escribe un numero " )
escribe un numero
>>> a = input ()
56
>>> print ( a )
56
>>> type ( a )
< class ’ str ’ >
>>> a = int ( input () )
56
>>> type ( a )
< class ’ int ’ >
>>> b = float ( input () )
5.89
>>> type ( b )
< class ’ float ’ >
5/23
AVF Programación estructurada
Presentación de datos por pantalla
Lectura de datos desde teclado
Flujo del programa

Lectura de datos

>>> a = int ( input ( " escribe un numero " ) )


escribe un numero56
>>> a = int ( input ( " escribe un numero " ) )
escribe un numero 56
>>> a = int ( input ( " escribe un numero " ) )
escribe un numero 5.6
Traceback ( most recent call last ) :
File " < pyshell #43 > " , line 1 , in < module >
a = int ( input ( " escribe un numero " ) )
ValueError : invalid literal for int () with base 10: ’
5.6 ’
>>>

6/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Sentencias condicionales

Se van a ejecutar ciertos bloques de código según se cumplan o no


determinadas condiciones.
if condicion :
sentencias

if condicion :
sentencias_1
else :
sentencias_2

if condicion_1 :
sentencias_1
elif condicion_2 :
sentencias_2

7/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Sentencias condicionales

x = int ( input ( " escribe un numero entero positivo " ) )


if x <3:
print ( " el valor de x es menor que 3 " )
elif x <6:
print ( " el valor de x esta entre 3 y 6 " )
elif x <9:
print ( " el valor de x esta entre 6 y 9 " )
else :
print ( " el valor de x es mayor o igual que 9 " )

8/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Operadores de comparación

X == Y # devuelve verdadero si X es igual a Y


X != Y # devuelve verdadero si X es distinto a Y
X > Y # devuelve verdadero si X es mayor que Y
X < Y # devuelve verdadero si X es menor que Y
X >= Y # devuelve verdadero si X es mayor o igual que Y
X <= Y # devuelve verdadero si X es menor o igual que Y

Operadores de comparación

X >2 and Y >7 # verdadero cuando ambas condiciones son


verdaderas
X >2 or Y >7 # verdadero cuando una de las condiciones es
verdadera
not x >= y # verdadero cuando x es menor que y

9/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ejemplo
x = int ( input ( " escribe un numero entero positivo " ) )
y = int ( input ( " escribe un numero entero positivo " ) )
z = int ( input ( " escribe un numero entero positivo " ) )
if x < y and y < z :
p ,s , t =x ,y , z
if z < y and y < x :
p ,s , t =z ,y , x
if y < x and x < z :
p ,s , t =y ,x , z
if z < x and x < y :
p ,s , t =z ,x , y
if x < z and z < y :
p ,s , t =x ,z , y
if y < z and z < x :
p ,s , t =y ,z , x

print (p ,s , t )
¿Se puede mejorar la solución? 10/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ejemplo

x = int ( input ( " escribe un numero entero positivo " ) )


y = int ( input ( " escribe un numero entero positivo " ) )
z = int ( input ( " escribe un numero entero positivo " ) )

p ,s , t =x ,y , z

if p > s :
p , s =s , p
if p > t :
p , t =t , p
if s > t :
s , t =t , s

print (p ,s , t )
¿Se puede mejorar la solución?

11/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Expresiones condicionales
Muy frecuentemente es necesario asignar un valor A a una variable cuando se
cumple un cierta condición y un valor B cuando no se cumple
if p ==1:
z =10
else :
z =30
En Python este patrón se puede resumir en la siguiente expresión condicional
z =(10 if p ==1 else 30)
De modo que la sintaxis de una expresión condicional es:
(valor1 if condicion else valor2 )
donde el resultado es valor1 si la condición=True o valor2 si la condición=False

12/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ejercicios

◦ Diseñar un programa que devuelva el máximo de cuatro números


◦ Diseñar un programa que tome tres valores de entrada, y muestre por
pantalla si uno de ellos es igual a la suma de los otros dos.
◦ Diseñar un programa que tome tres longitudes de entrada y nos diga si se
puede construir un triángulo con varitas de esas longitudes.

13/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Sentencias iterativas: ciclos

Se trata de repetir una tarea un número prefijado de veces o hasta que se


cumpla cierta condición
Python tiene dos tipos de ciclos:
◦ for: cuando se conoce de antemano el número de veces que se ha de
repetir el ciclo
◦ while: cuando no se conoce de antemano el número de veces que se va a
repetir; en este caso se debe conocer la condición de parada

14/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ciclo while

x =4 >>>
while x >0: 4 16
ic = x **2 3 9
print (x , ic ) 2 4
x =x -1 1 1
>>>

15/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ciclo while

0.265077652566
0.589876655231
from random import random
0.325647887592
x =0.5
0.137832548735
while x <0.6:
0.558475234583
x = random ()
0.502389732499
print ( x )
0.528394593689
print ( " fin " )
0.128745328957
0.722839470734
fin

16/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ciclo for

>>>
for i in [0 ,1 ,2 ,3]: 0 0
ic = i **3 1 1
print (i , ic ) 2 8
3 27
>>>

for i in [3 ,1 ,4 ,1 ,5 ,9 ,2 ,6 ,5 ,3]:
print ( " un digito de pi es " , i )

for i in [3 ,1 ,4 ,1 ,5 ,9]+[2 ,6 ,5 ,3]:


print ( i )

for i in " estas son palabras al azar " . split () :


print ( i )

17/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

La función range
La función range se usa para iterar sobre una secuencia de números

>>>
0
1
for i in range (5) :
2
print ( i )
3
4
>>>

range (5 , 10)
5 hasta 9

range (0 , 10 , 3)
0, 3, 6, 9

range ( -10 , -100 , -30)


-10 , -40 , -70
18/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ciclo for

>>>
for i in range (4) :
0 0
ic = i **3
1 1
print (i , ic )
2 8
3 27
>>>

>>>
for i in range (2 ,7 ,2) :
2 8
ic = i **3
4 64
print (i , ic )
6 216
>>>

19/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ejemplo

x = int ( input ( " escribe un numero entero " ) )


y = int ( input ( " escribe un numero entero " ) )
prod =0

while y >0:
prod = prod + x
y =y -1
---------------------------------
for i in range ( y ) :
prod = prod + x

print ( prod )
¿Se puede mejorar la solución?

20/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

break y continue

break
La instrucción break interrumpe un ciclo for o while
from random import random
i ,s , limit =0 , 0.0 , 15.0
while s < limit : # termina si s >= limit
s = s + random ()
i = i +1
if i >30:
break # tambien termina si i >30
print ( s )

21/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

continue
La instrucción continue hace que un ciclo for o while salte a la iteración
siguiente

1 2
for i in range (15) : 3 4
if i %2==0: 5 6
continue 7 8
print (i , i +1) 9 10
11 12
13 14

22/23
AVF Programación estructurada
Presentación de datos por pantalla
sentencias condicionales
Lectura de datos desde teclado
sentencias iterativas
Flujo del programa

Ejercicios

◦ Diseñar un programa que devuelva el cociente y el resto de una divison


entera suponiendo que no tenemos los operadores de división (//) y de
resto( %)
◦ Diseñar un programa para obtener el máximo común divisor según el
algoritmo de Euclides
◦ Diseñar un programa para calcular la potencia de dos números suponiendo
que no disponemos del operador **

23/23
AVF Programación estructurada

También podría gustarte