Python Practicas 2
Python Practicas 2
1.01. Hacer un programa que muestre "Hola mundo", y ejecutarlo para ver el mensaje
en la pantalla. ¿Cómo lo ejecutó? ¿Qué otras maneras había de ejecutarlo?
1.05. Hacer un programa que muestre "Esto es un caño". Ejecútelo. ¿Qué sucede?
¿Cómo lo solucionó?
2. Tipos de Datos
2.03. Hacer un programa que le pida una cadena al usuario (usando la función
"raw_input") y la imprima a pantalla al revés. Por ejemplo, para el texto "Esto es
asi", debería mostrar:
"isa se otsE"
2.05. Pedirle un número al usuario, elevarlo al cuadrado, y mostrar los dígitos al revés y
separados por espacio. Por ejemplo, si el usuario ingresa 17, la salida tiene que ser "9 8
2".
3. Controles de flujo
3.02. Hacer un programa que le pida una cadena al usuario, y arme una triángulo
creciente y decreciente con ese texto. Por ejemplo, para el texto "klop", el resultado
sería:
k
kl
klo
klop
klo
kl
k
3.03. Si listamos todos los números naturales menores a 10 que son múltiplos de 3 o 5,
tenemos 3, 5, 6 y 9. La suma de estos múltiplos es 23. Encontrar y mostrar la suma de
todos los múltiplos de 3 o 5 menores a 1000.
3.04. Se escriben todos los números enteros positivos en una lista, ordenados y
empezando por el 1 (en la posición 0), luego se tachan todos los que tienen el dígito 9 al
menos una vez, y después se tachan todos los múltiplos de 3. Considerando solamente
los números no tachados, ¿qué número queda en la posición un millón?
3.05. Encontrar dos números X e Y enteros mayores o iguales que 2 tales que XY + YX
= 94932
3.08. Pedirle un texto al usuario, y mostrar el promedio de largo (hasta dos decimales)
de todas las palabras (separando por espacio, tab, enter, etc, no por signos de ortografía)
de ese texto. Por ejemplo, para el input "Hola, hermano, vine a visitarte", la salida sería
5.40.
3.09. Un número palíndromo se lee igual en los dos sentidos. El palíndromo más grande
formado del producto de números de dos dígitos es 9009 (91 x 99). Encontrar el
palíndromo más grande formado por el producto de dos números de tres dígitos.
3.11. Pedirle un texto al usuario, y hacer una estadística sobre cuantas veces aparece
cada caracter, mostrando el resultado de mayor a menor respetando la alineación a la
derecha de los números. Por ejemplo, para "nosotros no somos como los orozco, yo los
conozco, son ocho los monos", debería mostrar:
o 23
12
s 9
n 5
c 5
m 3
l 3
z 2
r 2
, 2
y 1
t 1
h 1
4. Encapsulando código
4.01. Hacer una función que recibe un número y contesta "par" o "impar" en función de
si el número es par o no.
4.02. A la misma función que en el punto anterior, agregarle un docstring (con pruebas
incluidas, ver el módulo doctest).
4.03. Hacer una función que recibe dos números y devuelve "mayor" (si el primer
número es mayor que el segundo), "menor", o "iguales".
4.04. Hacer una función que recibe un número y contesta "primo" o "no primo" en
función de si el número es primo o no.
4.05. Al listar los primeros seis números primos (2, 3, 5, 7, 11 y 13), podemos ver que el
sexto (6°) primo es 13. Cual es el 10000° número?
4.06. Hacer un programa que genere un número entero al azar (módulo random) entre 0
y 1000, y le vaya pidiendo al usuario que ingrese números enteros para adivinarlo. Si el
usuario ingresa un número menor que el objetivo, muestra "Es más alto!"; si el usuario
ingresa uno mayor, muestra "Es más bajo!"; si el usuario acierta, muestra "Viva
Python!", y termina. Si el usuario no acertó en 7 intentos, que muestre "Alpiste perdiste!
Booo" y termine.
4.07. Hacer una función que reciba un texto y devuelva el mismo texto pero con cada
palabra invertida. Por ejemplo, llamándola con "Esto es una prueba", debe devolver
"otsE se anu abeurp".
4.08. Hacer una función que reciba dos palabras y que imprima linea por linea las
primeras, segundas, etc. letras de ambas palabras. Por ejemplo, llamándola con "Hola" y
"mundo", el resultado sería:
H m
o u
l n
a d
o
4.09. Encuentre la cantidad de enteros entre 1 < n < 107 para los cuales n y n+1 tienen
la misma cantidad de divisores positivos enteros. Por ejemplo, 14 tiene el 1, 2, 7 y 14,
mientras que 15 tiene 1, 3, 5 y 15.
4.10. Cuando en un número la diferencia entre cada par de dígitos consecutivos es uno,
se lo llama número "step" (como el 123234, el 9876787654, etc.). ¿Cuántos números
"step" menores a un millón existen?
4.11. Pedirle un texto al usuario y mostrar el mismo texto pero sin las vocales. Por
ejemplo, para un input de "Yo estaba allí", debería mostrar "Y stb ll".