Estructuras Repetitivas

11. Ejercicios propuestos 2


### **1. Contador de vocales y consonantes**  
**Consigna**:  
Pedir una frase al usuario y contar cuántas vocales (a, e, i, o, u) y consonantes contiene (ignorar espacios y símbolos).  
**Ejemplo**:  
Entrada: `"Python es genial"`  
Salida: `"Vocales: 4, Consonantes: 8"`.

---

### **2. Validación de contraseña simple**  
**Consigna**:  
Pedir una contraseña al usuario y verificar que cumpla:  
- Al menos 8 caracteres.  
- Contener al menos un número.  
- Contener al menos una letra mayúscula.  
Si no cumple, mostrar qué requisito falló.  
**Ejemplo**:  
Entrada: `"abc123"`  
Salida: `"Falta: longitud >= 8 y mayúscula"`.

---

### **3. Número capicúa**  
**Consigna**:  
Pedir un número entero positivo y determinar si es capicúa (se lee igual al derecho y al revés, ej: 121).  
**Ejemplo**:  
Entrada: `12321`  
Salida: `"Es capicúa"`.

---

### **4. Suma de números pares en un rango**  
**Consigna**:  
Pedir dos números enteros (inicio y fin) y sumar todos los números pares en ese rango (inclusive).  
**Ejemplo**:  
Entrada: `3` y `8`  
Salida: `"Suma de pares: 18"` (4 + 6 + 8).

---

### **5. Cálculo de promedio con reintentos**  
**Consigna**:  
Pedir al usuario que ingrese 5 números (validar que sean enteros). Si ingresa un valor no válido, permitir reintentar hasta 3 veces por número. Al final, mostrar el promedio.  
**Ejemplo**:  
Entrada: `[10, "a", 3, 5, 2]` → Reintentos para el segundo valor.  
Salida: `"Promedio: 5"`.

---

### **6. Conversor de segundos a HH:MM:SS**  
**Consigna**:  
Pedir una cantidad de segundos (entero positivo) y convertirlo a formato `horas:minutos:segundos`.  
**Ejemplo**:  
Entrada: `3661`  
Salida: `"1:1:1"`.

---

### **7. Patrón de asteriscos en escalera**  
**Consigna**:  
Pedir un número entero `n` e imprimir un patrón de escalera con `*`, donde cada nivel tiene un asterisco más.  
**Ejemplo**:  
Entrada: `4`  
Salida:  
```
*  
**  
***  
****
```

---

### **8. Máximo común divisor (MCD) con restas**  
**Consigna**:  
Pedir dos números enteros positivos y calcular su MCD usando el método de restas sucesivas.  
**Ejemplo**:  
Entrada: `56` y `98`  
Salida: `"MCD: 14"`.

---

### **9. Números perfectos**  
**Consigna**:  
Pedir un número entero positivo y determinar si es "perfecto" (la suma de sus divisores propios es igual al número, ej: 6 = 1 + 2 + 3).  
**Ejemplo**:  
Entrada: `28`  
Salida: `"28 es un número perfecto"`.

---

### **10. Juego de Piedra, Papel o Tijera**  
**Consigna**:  
Hacer un juego donde el usuario ingrese "piedra", "papel" o "tijera" y el programa elija aleatoriamente una opción. Mostrar el resultado.  
**Ejemplo**:  
Entrada: `"piedra"`  
Salida: `"La computadora eligió tijera. ¡Ganaste!"`


11. IMPARES CONSECUTIVOS
Pedir al usuario un número impar positivo. Si no es válido, volver a pedirlo (usando try/except).
Una vez ingresado correctamente, mostrar los siguientes 5 números impares consecutivos.

12. NÚMEROS AL REVÉS
Pedir al usuario un número entero positivo de DOS cifras. Mostrar sus cifras invertidas.
Ejemplo: Si se ingresa 42, el programa debe mostrar 24.

13. CUENTA ATRÁS PAR
Solicitar un número PAR entre 20 y 100. Validar con try/except. Si no es válido, repetir la solicitud.
Mostrar luego una cuenta regresiva de dos en dos, hasta llegar a cero.

14. EL NÚMERO CORRECTO
El programa tiene fijado un número entre 10 y 15. El usuario debe adivinarlo en no más de 5 intentos.
Luego de cada intento se indica si el número ingresado es mayor o menor que el correcto.

15. ESCALERA DE ASTERISCOS
Solicitar al usuario un número del 1 al 9. Mostrar una escalera de asteriscos creciente.
Ejemplo para 4:
*
**
***
****

16. SECUENCIA EXACTA
El programa tiene una secuencia fija de 5 valores: 3, 6, 9, 12, 15.
El usuario debe ingresar uno por uno esos valores en el mismo orden.
Si en algún momento se equivoca, se muestra "Secuencia incorrecta" y el programa termina.

17. SUMA ACUMULADA
Pedir números enteros al usuario hasta que la suma acumulada supere 50.
Mostrar cuántos números se necesitaron para llegar a ese total.

18. DÍGITOS 5 Y 0
Pedir al usuario un número entero positivo (usar try/except). Contar y mostrar cuántas veces aparece el dígito 5 y cuántas el 0.

19. CÓDIGOS VÁLIDOS
Solicitar 3 códigos de 4 caracteres. Cada código debe empezar con una letra mayúscula y terminar con un número.
Verificar e informar si cada uno es válido o no.

20. ALTERNANCIA
Mostrar 10 líneas que alternen entre los símbolos "+" y "-".
Debe comenzar con "+" y continuar intercalando.
Ejemplo:
+
-
+
-
...