Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- """
- En Python existen solamente 3 estruct logicas
- 1 condicional (if) un bucle indefinido (while) y un bucle definido (for)
- # while (mientras una condición es verdadera repito una serie de instrucciones)
- # Script que imprime los nros de 1 a 9 => es un bucle DEFINIDO, habria que usar FOR
- # Condición inicial (el primer nro a imprimir)
- numero = 1
- while numero < 10: # condición de ejecución del bucle
- print(numero)
- numero = numero + 1 # condición de incremento
- # Tengo 3 fuentes de posibles pèrdidas de control o errores:
- # condicion inicial condicion de ejecucion y cond de incremento
- # break interrumpe la ejecución de una estruc logica, GENERALMENTE un while
- # continue "resetea" la ejecución de una estruc logica, generalmente un while
- # si encuentro un continue debo reiniciar el ciclo
- numero = 1
- while numero < 10: # condición de ejecución del bucle
- print(numero)
- break # interrumpe el ciclo, "sale" del while, solamente imprime 1
- numero = numero + 1
- numero = 1
- while numero < 10: # condición de ejecución del bucle
- print(numero)
- continue #reinicia el ciclo, no incrementa nunca numero, imprime siempre 1
- numero = numero + 1
- # Script que pide numeros enteros distintos de cero. La carga de datos
- # debe finalizar cuando se ingrese un cero. Luego, se deberà informar
- # el promedio de dichos nros (ESTO ES UN BUCLE INDEFINIDO)
- # Todo problema de program implica decidir a) estruc de datos b) algoritmo
- numeros = []
- while True:
- numero = int(input("Ingrese un nro no nulo: "))
- if not numero:
- break
- numeros.append(numero)
- print(f"Promedio: {sum(numeros)/len(numeros)}")
- # Reescribo el proble de temp con while True: Primer template
- # orientado a eventos (espero la decisión de un usuario)
- # Script que pide una escala y un valor la convierte (entre ºC y ºF)
- # Mas sencilla
- print("Programa de conversión de temperaturas")
- while True:
- print('''
- Menu de opciones:
- 1. ºF -> ºC
- 2. ºC -> ºF
- 3. Salir
- ''')
- opcion = input("Seleccione una opción: ")
- if opcion == "1":
- temp = float(input("Ingrese el valor de la temperatura: "))
- print(f"{temp}ºF equivalen a {(temp-32) / 1.8:.1f}ºC")
- elif opcion == "2":
- temp = float(input("Ingrese el valor de la temperatura: "))
- print(f"{temp}ºC equivalen a {temp*1.8 + 32:.1f}ºF")
- elif opcion == "3":
- print("Gracias por utilizar este programa...")
- break
- else:
- print("Opción incorrecta")
- # Script que imprime una lista de nombres en forma vertical
- nombres = ["Juan", "Ana", "Tito", "Julia", "Josefa"]
- i = 0
- # Primera forma (debo modificar el codigo segun el tamaño de la lista)
- while True:
- print(nombres[i])
- i = i + 1
- if i == 5:
- break
- """
- # Segunda forma (la correcta)
- nombres = ["Juan", "Ana", "Tito", "Julia", "Josefa"]
- i = 0
- while i < len(nombres):
- print(nombres[i])
- i = i + 1
- # Pero este script debería implementarse con un for: es un bucle definido
- nombres = ["Juan", "Ana", "Tito", "Julia", "Josefa"]
- for nombre in nombres:
- print(nombre)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement