Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Importante
Cuando resuelvas los ejercicios estar�s actuando como el �programador� (la persona
que crea el programa). Pero luego tendr�s que ejecutar tu c�digo y probar si
funciona correctamente, y en este caso actuar�s como el �usuario� (alguien que
utiliza el programa). No siempre el programador y el usuario son la misma persona
y, generalmente, los usuarios no conocen los detalles t�cnicos ni pueden ver el
c�digo. S�lo ver�n la salida en pantalla que les muestre el programa. Consider�
que, en cada ejecuci�n del programa, el usuario podr�a ingresar datos diferentes.
El programa deber�a funcionar de forma consistente y sin errores en todos los
casos.
Soluciones
Haciendo click sobre cada ejercicio se desplegar� su soluci�n. Es importante tener
en cuenta que, en algunos casos, es posible obtener el mismo resultado utilizando
diferentes estrategias o algoritmos. En este caso se plantea una soluci�n posible
para cada ejercicio.
Secci�n 1
Entrada/salida de datos - Variables - Tipos de datos
C�digo de ejemplo
Variable=5
variable=3
VaRiAbLe=8
#Son todas variables distintas porque Python (como muchos otros lenguajes)
distingue may�sculas y min�sculas.
C�digo de ejemplo
a=5
a=18
Ejemplo de ejecuci�n:
Tu nombre: Patricia
Ahora est�s en la matrix, Patricia
C�digo de ejemplo
1variable=23.95
#Arroja error porque los nombres de variables s�lo pueden comenzar con letras o
guiones bajos (_).
C�digo de ejemplo
n1=int(input())
n2=float(input())
#Sabemos que input() lee lo que el usuario escribe en el programa, pero el tipo de
eso que lee ser� siempre string. Si necesitamos que sea un n�mero debemos convertir
lo que input() devuelve. Para convertir a n�mero entero usamos int(input()) y para
convertir a n�mero con decimales usamos float(input()).
2
Escrib� un programa que solicite al usuario ingresar un n�mero con decimales y
almacenalo en una variable. A continuaci�n, el programa debe solicitar al usuario
que ingrese un n�mero entero y guardarlo en otra variable. En una tercera variable
se deber� guardar el resultado de la suma de los dos n�meros ingresados por el
usuario. Por �ltimo, se debe mostrar en pantalla el texto �El resultado de la suma
es [suma]�, donde �[suma]� se reemplazar� por el resultado de la operaci�n.
Ejemplo de ejecuci�n:
3
Escrib� un programa que solicite al usuario dos n�meros y los almacene en dos
variables. En otra variable, almacen� el resultado de la suma de esos dos n�meros y
luego mostr� ese resultado en pantalla.
A continuaci�n, el programa debe solicitar al usuario que ingrese un tercer n�mero,
el cual se debe almacenar en una nueva variable. Por �ltimo, mostr� en pantalla el
resultado de la multiplicaci�n de este nuevo n�mero por el resultado de la suma
anterior.
Ejemplo de ejecuci�n:
Ingres� un n�mero: 1
Ingres� otro n�mero: 2
Suman: 3
Ingres� un nuevo n�mero: 3
Multiplicaci�n de la suma por el �ltimo n�mero: 9
C�digo de ejemplo
a=a+1
a+=1
Ejemplo de ejecuci�n:
5
Escrib� un programa que solicite al usuario el ingreso de una temperatura en escala
Fahrenheit (debe permitir decimales) y le muestre el equivalente en grados Celsius.
La f�rmula de conversi�n que se usa para este c�lculo es: _Celsius = (5/9) *
(Fahrenheit-32)_
Ejemplo de ejecuci�n:
6
Escrib� un programa que solicite al usuario ingresar tres n�meros para luego
mostrarle el promedio de los tres.
Ejemplo de ejecuci�n:
7
Escrib� un programa que solicite al usuario un n�mero y le reste el 15%,
almacenando todo en una �nica variable. A continuaci�n, mostrar el resultado final
en pantalla.
Ejemplo de ejecuci�n:
C�digo de ejemplo
cadena=""
cadena=cadena+"buen"
cadena=cadena+" d�a"
print(cadena)
Ejemplo de ejecuci�n:
C�digo de ejemplo
frase="Estoy programando"
print(frase[0])
i=6
print(frase[i])
frase="Estoy programando"
print(len(frase))
ultimo_caracter=frase[len(frase)-1]
print(ultimo_caracter)
Ejemplo de ejecuci�n:
C�digo de ejemplo
a=10
b=4
print(a != b)
Ejemplo de ejecuci�n:
C�digo de ejemplo
print(58273%10)
print(58273//10)
Ejemplo de ejecuci�n:
12
Escrib� un programa para solicitar al usuario el ingreso de un n�mero entero y que
luego imprima un valor de verdad dependiendo de si el n�mero es par o no. Recordar
que un n�mero es par si el resto, al dividirlo por 2, es 0.
Ejemplo de ejecuci�n:
C�digo de ejemplo
a=int(input())
print(a>100 and a!=1000)
#Primero se calcular�n los valores l�gicos (True o False) de las dos comparaciones:
a > 100 y a != 1000 (lo cual depender� del n�mero guardado en la variable a). A
continuaci�n, se utilizar� la tabla de verdad de la operaci�n AND para calcular el
resultado.
13
Escrib� un programa que le solicite al usuario su edad y la guarde en una variable.
Que luego solicite la cantidad de art�culos comprados en una tienda y la guarde en
otra variable. Finalmente, mostrar en pantalla un valor de verdad (True o False)
que indique si el usuario es mayor de 18 a�os de edad y adem�s compr� m�s de 1
art�culo.
Ejemplo de ejecuci�n:
Tu edad: 32
Art�culos comprados: 1
False
14
Escrib� un programa que, dada una cadena de texto por el usuario, imprima True si
la cantidad de caracteres en la cadena es un n�mero impar, o False si no lo es.
Ejemplo de ejecuci�n:
Ingres� una frase: Era el mejor de los tiempos, era el peor de los tiempos.
True
C�digo de ejemplo
#Ambas comparaciones arrojan True porque el string �animal� es menor que �piedra� y
el string �bailar� es menor que �bebida�. El orden est� dado por c�mo aparecen las
letras en el alfabeto. En el caso de �animal� y �piedra�, la �a� es menor que la
�p�. En el caso de �bailar� y �bebida�, como la primera letra es la misma se eval�a
la segunda, y en este caso �a� es menor que �e�.
15
Escrib� un programa que le pida al usuario ingresar dos palabras y las guarde en
dos variables, y que luego imprima True si la primera palabra es menor que la
segunda o False si no lo es.
Ejemplo de ejecuci�n:
16
Escrib� un programa para pedir al usuario su nombre y luego el nombre de otra
persona, almacenando cada nombre en una variable. Luego mostrar en pantalla un
valor de verdad que indique si: los nombres de ambas personas comienzan con la
misma letra � si terminan con la misma letra. Por ejemplo, si los nombres
ingresados son Mar�a y Marcos, se mostrar� True, ya que ambos comienzan con la
misma letra. Si los nombres son Ricardo y Gonzalo se mostrar� True, ya que ambos
terminan con la misma letra. Si los nombres son Florencia y Lautaro se mostrar�
False, ya que no coinciden ni la primera ni la �ltima letra.
Ejemplo de ejecuci�n:
Tu nombre: Alfredo
Otro nombre: Eduardo
True
Secci�n 2
Bloques - Selecci�n - Repeticiones
C�digo de ejemplo
x=10
if x!=0:
print("Hola")
#El programa anterior har� que siempre se muestre �Hola� porque la condici�n que
tiene la instrucci�n if nunca puede ser False, ya que la variable x vale 10 y 10
siempre ser� distinto de 0. Si, en lugar de asignar un valor concreto, le
solicitamos al usuario que ingrese uno y lo guardamos en x, depender� de si ese
valor es distinto de 0 o no para saber si se mostrar� la palabra �Hola� o no.
17
Escrib� un programa que, dado un n�mero entero, muestre su valor absoluto. Record�
que, para los n�meros positivos su valor absoluto es igual al n�mero (el valor
absoluto de 52 es 52), mientras que, para los negativos, su valor absoluto es el
n�mero multiplicado por -1 (el valor absoluto de -52 es 52).
Ejemplo de ejecuci�n:
N�mero: -12
Valor absoluto: 12
C�digo de ejemplo
x=int(input("N�mero:"))
if x%2==0:
print("El n�mero es par")
else:
print("El n�mero es impar")
#La instrucci�n if-else permite que se ejecute un bloque de c�digo u otro, pero
nunca ambos. En este ejemplo, si es verdad que el n�mero ingresado por el usuario
(y almacenado en la variable x) es un n�mero par (es decir, si es verdad que el
resto de la divisi�n del n�mero por 2 es 0), se imprimir� �El n�mero es par�. Si
esa condici�n es falsa (el resto de la divisi�n del n�mero por 2 no es 0), se
imprimir� �El n�mero es impar�.
18
Escrib� un programa que solicite al usuario el ingreso de dos n�meros diferentes y
muestre en pantalla al mayor de los dos.
Ejemplo de ejecuci�n:
Un n�mero: 592
Otro n�mero distinto: 1726
1726 es mayor
19
Escrib� un programa que solicite al usuario una letra y, si es una vocal, muestre
el mensaje �Es vocal�. Verificar si el usuario ingres� un string de m�s de un
car�cter y, en ese caso, informarle que no se puede procesar el dato.
Ejemplo de ejecuci�n:
Letra: o
Es vocal
20
Escrib� un programa para solicitar al usuario tres n�meros y mostrar en pantalla al
menor de los tres.
Ejemplo de ejecuci�n:
Primer n�mero: 20
Segundo n�mero: 30
Tercer n�mero: 10
Menor: 10
C�digo de ejemplo
n=int(input("N�mero:"))
if n<10 or n>20:
print("N�mero incorrecto")
else:
print("N�mero correcto")
#En las dos instrucciones if-else anteriores se toma como correcto a cualquier
n�mero entre 10 y 20, pero es necesario observar c�mo los operadores < y > cambian
y c�mo el operador and cambia por or para lograr el mismo objetivo.
21
Escrib� un programa que solicite ingresar un nombre de usuario y una contrase�a. Si
el nombre es �Gwenevere� y la contrase�a es �excalibur�, mostrar en pantalla
�Usuario y contrase�a correctos. Puede ingresar a Camelot�. Si el nombre o la
contrase�a no coinciden, mostrar �Acceso denegado�.
Ejemplo de ejecuci�n:
22
Escrib� un programa que permita saber si un a�o es bisiesto. Para que un a�o sea
bisiesto debe ser divisible por 4 y no debe ser divisible por 100, excepto que
tambi�n sea divisible por 400.
Ejemplo de ejecuci�n:
A�o: 2020
Bisiesto
C�digo de ejemplo
for x in range(0,10):
print(x)
for x in range(10):
print(x)
Ejemplo de ejecuci�n:
Ingres� un n�mero: 3
1
2
3
24
Escrib� un programa que muestre la sumatoria de todos los n�meros entre el 0 y el
100.
Ejemplo de ejecuci�n:
Sumatoria: 5050
25
Escrib� un programa que, dado un n�mero por el usuario, muestre todos sus divisores
positivos. Record� que un divisor es aquel que divide al n�mero de forma exacta
(con resto 0).
Ejemplo de ejecuci�n:
N�mero: 14
Divisores:
1
2
7
14
C�digo de ejemplo
for x in "hola":
print(x)
#La repetici�n for utiliza el operador in para recorrer una secuencia. Este
operador retorna un valor l�gico: True si el primer operando est� contenido en el
segundo, False si no es as�. Es posible utilizar el operador in de forma
independiente, para saber, por ejemplo, si un string est� contenido dentro de otro:
"a" in "hola" dar� como resultado True porque el string �a� est� dentro de �hola�.
Asimismo, se puede negar el valor l�gico obtenido por la operaci�n utilizando not:
"a" not in "hola" dar� como resultado Fase porque no es verdad que el string �a� no
est� dentro de �hola�.
26
Escrib� un programa que, dada una frase por el usuario, muestre la cantidad total
de vocales (tanto may�sculas como min�sculas) que contiene.
Ejemplo de ejecuci�n:
Ejemplo de ejecuci�n:
0
1
1
2
3
5
8
13
21
34
28
Escrib� un programa que, dado un n�mero entero positivo, calcule y muestre su
factorial. El factorial de un n�mero se obtiene multiplicando todos los n�meros
enteros positivos que hay entre el 1 y ese n�mero. El factorial de 0 es 1.
Ejemplo de ejecuci�n:
N�mero: 7
Factorial: 5040
29
Escrib� un programa que permita al usuario ingresar 6 n�meros enteros, que pueden
ser positivos o negativos. Al finalizar, mostrar la sumatoria de los n�meros
negativos y el promedio de los positivos. No olvides que no es posible dividir por
cero, por lo que es necesario evitar que el programa arroje un error si no se
ingresaron n�meros positivos.
Ejemplo de ejecuci�n:
N�mero: 15
N�mero: -12
N�mero: 5
N�mero: 10
N�mero: -3
N�mero: 9
Sumatoria de los negativos: -15
Promedio de los positivos: 9.75
C�digo de ejemplo
cadena=input("Frase:")
for caracter in cadena:
print(caracter)
#Cuando se recorre un string mediante un for que itera por cada uno de sus
caracteres, asignar un nuevo valor a la variable iteradora (en este caso, caracter)
no modifica el string original. Esto es, la instrucci�n caracter="a" dentro del for
no modificar�a en nada el string almacenado en la variable cadena.
30
Escrib� un programa que permita al usuario ingresar una frase y luego un car�cter
(string de longitud 1) y luego muestre la frase ingresada, pero con todas las
ocurrencias del car�cter indicado por el usuario reemplazadas por �*�.
Ejemplo de ejecuci�n:
31
Escrib� un programa que, dada una frase por el usuario, la muestre invertida, sin
utilizar una rebanada con paso negativo.
Ejemplo de ejecuci�n:
Frase: Sab�a qui�n era esta ma�ana, pero he cambiado varias veces desde entonces
secnotne edsed secev sairav odaibmac eh orep ,ana�am atse are n�iuq a�baS
C�digo de ejemplo
suma=0
numero=int(input("N�mero:"))
while numero != 0:
suma=suma+numero
numero=int(input("N�mero:"))
print("Suma de todos los n�meros ingresados:", suma)
#Una repetici�n while necesita una condici�n (en este ejemplo: numero!=0), que es
un valor l�gico para saber si contin�a repitiendo el bloque o no. Si el valor es
True, se ejecuta el bloque correspondiente al while; si es False, no se ejecuta y
contin�a el programa con la instrucci�n siguiente al bloque. El c�digo del ejemplo
permite ingresar n�meros y cada uno se acumula sum�ndolo en la variable suma, para
luego pedir al usuario un nuevo n�mero. Cuando se ingresa el 0, el bloque del while
no se ejecuta y pasa directamente a la siguiente instrucci�n, que en este caso es
un print que muestra la suma de todos los n�meros ingresados.
C�digo de ejemplo
numero=int(input("N�mero:"))
while numero != 0:
print("Tu n�mero es:", numero)
numero=int(input("N�mero:"))
while numero != 0:
print("Tu n�mero es:", numero)
numero=int(input("N�mero:"))
32
Escrib� un programa que permita al usuario ingresar los montos de las compras de un
cliente (se desconoce la cantidad de datos que cargar�, la cual puede cambiar en
cada ejecuci�n), cortando el ingreso de datos cuando el usuario ingrese el monto 0.
Si ingresa un monto negativo, no se debe procesar y se debe pedir que ingrese un
nuevo monto. Al finalizar, informar el total a pagar teniendo que cuenta que, si
las ventas superan el monto total de 1000, se le debe aplicar un 10% de descuento.
Ejemplo de ejecuci�n:
33
Escrib� un programa que permita al usuario ingresar una cantidad de n�meros
positivos indefinida (la cantidad que ingresar� no se conoce y puede cambiar en
cada ejecuci�n), finalizando cuando ingresa el n�mero 0 (que no se tendr� en
cuenta). Una vez terminada la lectura de n�meros, informar cu�l fue el mayor de los
n�meros ingresados.
Ejemplo de ejecuci�n:
N�mero: 6
N�mero: 9
N�mero: 2
N�mero: 12
N�mero: 0
Mayor n�mero ingresado: 12
C�digo de ejemplo
#La repetici�n while ejecutar� el bloque siempre que la condici�n sea True. En el
ejemplo anterior, se repetir� el bloque mientras los strings ingresados tengan
longitud 1 (un �nico car�cter) y la repetici�n finalizar� cuando se ingrese un
string con longitud diferente a 1 (ya sea un string vac�o o uno que tenga m�s de 1
car�cter).
cantidad=0
caracter=input("Car�cter:")
while len(caracter) != 1:
cantidad=cantidad+1
caracter=input("Car�cter:")
#En este segundo ejemplo se repetir� el bloque mientras los strings ingresados
tengan longitud diferente de 1 y la repetici�n finalizar� cuando se ingrese un
�nico car�cter.
34
Escrib� un programa que pregunte al usuario si desea analizar calificaciones de
alumnos y, s�lo si responde �S� comenzar� el procesamiento de los datos, hasta que
el usuario ingrese algo diferente de �S�. Por cada alumno, permitir ingresar su
calificaci�n. Si es mayor a 4 el alumno est� aprobado. Finalmente, mostrar
�Porcentaje de alumnos aprobados: x %� (donde x es el porcentaje de aprobados sobre
el total de calificaciones procesadas). Tambi�n se debe imprimir �Promedio de los
aprobados: y� (donde y es la calificaci�n promedio, s�lo de los alumnos aprobados).
Ejemplo de ejecuci�n:
�Analizar calificaciones? �S� para �s�: S
Calificaci�n de un alumno: 9
�Continuar? �S� para �s�: S
Calificaci�n de un alumno: 4
�Continuar? �S� para �s�: S
Calificaci�n de un alumno: 8
�Continuar? �S� para �s�: N
Porcentaje de alumnos aprobados: 66.66666666666667 %
Promedio de los aprobados: 8.5
C�digo de ejemplo
cantidad=0
n=int(input("N�mero:"))
while n>0 and n%10!=0:
cantidad=cantidad+1
n=int(input("N�mero:"))
#Una condici�n tiene que ser un valor l�gico, sin importar qu� tipo de operaci�n se
deba realizar para obtenerlo. En el ejemplo anterior, se ejecutar� el bloque
mientras los n�meros ingresados sean positivos (mayores que 0) y no sean m�ltiplos
de 10. Cuando el usuario ingrese un n�mero que incumpla alguna de las dos
condiciones (un n�mero negativo � un n�mero m�ltiplo de 10) el bloque deja de
ejecutarse.
35
Escrib� un programa que solicite al usuario el ingreso de strings de longitud 1 (un
solo car�cter), uno por vez. La repetici�n finalizar� cuando se ingrese un string
que no tenga longitud 1, o cuando el string ingresado corresponda al d�gito
num�rico 0. Al finalizar, mostrar el string completo que se form� con todos los
caracteres ingresados y qu� porcentaje de caracteres del total fueron la letra �a�.
Ejemplo de ejecuci�n:
Escrib� un car�cter: L
Escrib� un car�cter: 9
Escrib� un car�cter: a
Escrib� un car�cter: 4
Escrib� un car�cter: A
Escrib� un car�cter: 0
Escrib� un car�cter: N
Escrib� un car�cter: a
Escrib� un car�cter: a
Escrib� un car�cter: 5
El string completo es: L9a4A0Naa
Porcentaje de letras �a�: 33.333333333333336
36
Escrib� un programa que, dado un n�mero entero por el usuario (guardado como int),
muestre la suma de todos sus d�gitos. Record� que vas a necesitar obtener cada uno
de los d�gitos por separado para poder sumarlos entre s�.
Ejemplo de ejecuci�n:
37
Escrib� un programa para solicitar al usuario que ingrese n�meros enteros positivos
(la cantidad que ingresar� no se conoce y la decide el usuario). La lectura de
n�meros finalizar� cuando el usuario ingrese el n�mero -1. Por cada n�mero
ingresado, mostrar la cantidad de d�gitos pares y la cantidad de d�gitos impares
que tiene. Al finalizar, mostrar cu�ntos n�meros m�ltiplos de 3 ingres� el usuario.
Ejemplo de ejecuci�n:
38
Escrib� un programa que solicite al usuario una cadena de caracteres (que puede
contener letras, n�meros o s�mbolos). Analizar la cadena para mostrar: cu�ntas
letras del abecedario (min�sculas y may�sculas) contiene, cu�ntos s�mbolos
(caracteres que no son ni letras ni n�meros), cu�ntos d�gitos num�ricos y, de los
d�gitos, cu�ntos son m�ltiplos de 4.
Ejemplo de ejecuci�n:
39
Escrib� un programa que permita al usuario ingresar n�meros que ser�n le�dos como
string (no como int o float) hasta que ingrese uno que sea m�ltiplo de 10 � menor
que 0 (que no ser� procesado). Se formar�n dos strings, en los cuales se
concatenar�n los n�meros ingresados, seg�n el siguiente criterio: en un string se
concatenar�n todos los n�meros que el usuario ingrese cuya cantidad de d�gitos sea
un m�ltiplo de 3. En el otro, se concatenar�n todos los n�meros que contengan el
d�gito 0. Si un n�mero cumple ambas condiciones, debe concatenarse en ambos
strings. En cada string, despu�s de cada n�mero concatenado debe colocarse el
car�cter �-�. Al finalizar, mostrar en pantalla ambos strings.
Ejemplo de ejecuci�n:
N�mero: 829
N�mero: 102834
N�mero: 6
N�mero: 4307
N�mero: 23
N�mero: 1602357
N�mero: 5896
N�mero: 720
N�meros cuya cantidad de d�gitos es m�ltiplo de 3: 829-102834-
N�meros que contienen el 0: 102834-4307-1602357-
40
Escrib� un programa que permita al usuario ingresar t�tulos de libros por teclado,
finalizando el ingreso al leerse el string �*� (asterisco). Cada vez que el usuario
ingrese un string de longitud 1 que contenga s�lo una barra �/� se considera que
termina una l�nea. Por cada l�nea completa, informar cu�ntos d�gitos num�ricos (del
0 al 9) aparecieron en total (en todos los t�tulos de libros que componen en esa
l�nea). Finalmente, informar cu�ntas l�neas completas se ingresaron.
Ejemplo de ejecuci�n:
Secci�n 3
Funciones
C�digo de ejemplo
n1=int(input("Primer n�mero:"))
n2=int(input("Segundo n�mero:"))
n2=int(input("Tercer n�mero:"))
print("El promedio de los tres es:", promedio(n1,n2,n3))
N�mero: 620
N�mero: _12993
N�mero: 230
N�mero: 7
N�mero: 18
N�mero: 9234
N�mero: 38
N�mero: 567
N�mero: 8146
N�mero: 32
Suma de los pares: 18318
Suma de los impares: 13567
42
Escrib� una funci�n llamada sumatoriaDigitos que reciba como par�metro un n�mero y
retorne la suma de todos sus d�gitos, reutilizando la estrategia utilizada en el
ejercicio 36. Finalmente, escribir un algoritmo que solicite al usuario ingresar
varios n�meros hasta que ingrese el n�mero 100, con el cual cortar� la repetici�n.
Por cada n�mero, mostrar la suma de sus d�gitos, para lo cual se llamar� a la
funci�n sumatoriaDigitos.
Ejemplo de ejecuci�n:
C�digo de ejemplo
n1=int(input("Primer n�mero:"))
n2=int(input("Segundo n�mero:"))
n3=int(input("Tercer n�mero:"))
print(mayorDeTres(n1,n2,n3))
#Un programa puede tener una cantidad ilimitada de funciones y �stas pueden
llamarse desde cualquier parte del programa, incluso desde dentro de otras
funciones. Tambi�n es posible llamar a una misma funci�n m�s de una vez, incluso
pas�ndole diferentes datos como argumentos.
#Cada funci�n tiene su propio espacio de memoria, por lo que las variables creadas
dentro de ella no existen dentro del resto del programa. Es por esto que podr�an
utilizarse los mismos nombres para variables en diferentes funciones, pero
representar�n datos diferentes. Adem�s, aunque el valor de los par�metros se
modifique, �sto no modificar� los valores de los argumentos en la llamada a la
funci�n. Es por esto que se suele decir que los par�metros son datos �de entrada� y
el valor de retorno es un dato �de salida�.
43
Escrib� un programa que permita al usuario ingresar n�meros enteros. La repetici�n
terminar� cuando el usuario ingrese un n�mero para el cual la suma de sus d�gitos
sea mayor que 1000 � m�ltiplo de 5. Finalmente, mostrar cu�ntos n�meros impares
ingres� el usuario antes de cortar la repetici�n. Reutilizar las funciones esPar y
sumatoriaDigitos implementadas en los ejercicios anteriores.
Ejemplo de ejecuci�n:
Escrib� un n�mero: 16
Escrib� un n�mero: 922
Escrib� un n�mero: 1513
Escrib� un n�mero: 481
Escrib� un n�mero: 90
Cantidad de impares: 2
44
Escrib� una funci�n que reciba un string y retorne True si es un pal�ndromo (esto
es, si se lee igual de izquierda a derecha o de derecha a izquierda), False en caso
contrario. Utilizar esta funci�n en un programa que permita al usuario ingresar
palabras hasta que ingrese la palabra �fin� (suponer que todas las palabras son en
min�sculas o todas en may�sculas, de forma consistente). Al finalizar, mostrar la
cantidad de pal�ndromos ingresados.
Ejemplo de ejecuci�n:
Cadena: abba
Cadena: m
Cadena: luz
Cadena: reconocer
Cadena: golondrina
Cadena: fin
Cantidad de pal�ndromos: 3
C�digo de ejemplo
def cantidadDigitos(numero):
cantidad=0
while numero!=0:
cantidad=cantidad+1
numero=numero//10
return cantidad
mayor=-1
n=int(input("N�mero positivo:"))
while cantidadDigitos(n)%3 != 0:
if n>mayor:
mayor=n
n=int(input("N�mero positivo:"))
print("Mayor n�mero ingresado:", mayor)
#Las funciones son tambi�n �tiles para pensar los programas en partes m�s peque�as.
En el ejemplo de arriba, la repetici�n lee n�meros hasta que se ingresa uno cuya
cantidad de d�gitos es m�ltiplo de 3. Cuando finaliza la repetici�n, de todos los
n�meros ingresados se muestra cu�l fue el mayor. Pero para poder armar la condici�n
de esta repetici�n es necesario calcular la cantidad de d�gitos de un n�mero, lo
cual se delega en una funci�n que es llamada en cada iteraci�n, cuando se eval�a la
condici�n.
45
Escrib� un programa que permita al usuario ingresar n�meros enteros hasta que
ingrese uno cuyo d�gito inicial sea el 9 (el cual no se procesar�). Una vez
terminada la repetici�n, mostrar cu�ntos de los n�meros que el usuario ingres�
tienen s�lo dos divisores (para esto es posible reutilizar parte de la estrategia
elaborada en el ejercicio 25).
Ejemplo de ejecuci�n: