Advertisement
teslariu

ciclo for

Jan 28th, 2023
407
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.70 KB | None | 0 0
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. #
  4. # bucles definidos: for
  5. # estructura: for <iterador> in <iterable>:
  6. # <iterador>: una variable, puedo ponerle cualquier nombre
  7. # <iterable>: existen varios, recordar que TODA COLECCION ES ITERABLE
  8.  
  9. # 1) for sin range
  10. # ejemplo: imprimir una lista de nombres
  11. # no recomendado, con while:
  12.  
  13. nombres = ["Juana", "Ana", "Oscar","Tito"]
  14. i = 0
  15. while i < len(nombres):
  16.     print(nombres[i])
  17.     i += 1
  18.    
  19. # recomendada:
  20. lista_de_nombres = ["Juana", "Ana", "Oscar","Tito"]
  21. for cada_nombre in lista_de_nombres:
  22.     print(cada_nombre)
  23.  
  24. # reescribo el problema de las vocales y consonantes:
  25. vocales = 0
  26. consonantes = 0
  27. otros_caracteres = 0
  28.  
  29. frase = input("Ingrese una frase: ")
  30.  
  31. for caracter in frase:
  32.     if caracter.lower() in "aeiouáéíóú":
  33.         vocales += 1
  34.     elif caracter.lower() in "bcdfghjklmnñpqrstvwxyz":
  35.         consonantes += 1
  36.     else:
  37.         otros_caracteres += 1
  38.  
  39. print(f"Vocales: {vocales} - Consonantes: {consonantes} - Otros caract: {otros_caracteres}")
  40.  
  41.  
  42. # 2) for con range:
  43. # range(valor inicial, tope, incremento)
  44. # a) imprimir los primeros 10 nros naturales con su cuadrado y su cubo
  45. numeros = [1,2,3,4,5,6,7,8,9,10]
  46.  
  47. for numero in numeros:
  48.     print(numero, numero**2, numero**3)
  49.  
  50. # b) idem que a pero para los 100 primeros naturales
  51. for numero in range(1,101,1):
  52.     print(numero, numero**2, numero**3)
  53.    
  54. # c) idem a b pero para nros impares
  55. for numero in range(1,100,2):
  56.     print(numero, numero**2, numero**3)
  57.    
  58. # d) impares en forma decreciente
  59. for numero in range(99, 0, -2):
  60.     print(numero, numero**2, numero**3)
  61.  
  62. # formas abreviadas del range
  63. # range(valor inicial, tope)  => incremento por defecto 1
  64. #Ej: imprimir enteros de 5 a 10
  65. for numero in range(5,11):
  66.     print(numero)
  67.  
  68. # range(tope)  => valor inicial x defecto 0, increm x defecto 1
  69. # Imprimir los digitos (0 1 .... 9)
  70. for numero in range(10):
  71.     print(numero)
  72.  
  73.  
  74. # Ingresar una frase y devolver la posición de la primera 'x' hallada. De
  75. # no existir ninguna, mostarlo por pantalla
  76.  
  77. # 1) con range
  78. hallada = False
  79. frase = input("Ingrese una frase: ")
  80. for indice in range(len(frase)):
  81.     if frase[indice].lower() == "x":
  82.         print(f"Primera x hallada en la posición {indice + 1}")
  83.         hallada = True
  84.         break
  85. if not hallada:
  86.     print("No se encontró ninguna letra 'x'")
  87.  
  88.  
  89. #2) sin range
  90. hallada = False
  91. frase = input("Ingrese una frase: ")        
  92. indice = 0
  93. for caracter in frase:
  94.     if caracter.lower() == "x":
  95.         print(f"Primera x hallada en la posición {indice + 1}")
  96.         hallada = True
  97.         break
  98.     indice += 1
  99. if not hallada:
  100.     print("No se encontró ninguna letra 'x'")    
  101.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement