Algoritmos

Páginas: 5 (1224 palabras) Publicado: 15 de febrero de 2013
Ciclos
Ejercicio 5.1. Escribir un programa que reciba una a una las notas del usuario, preguntando a cada paso
si desea ingresar más notas, e imprimiendo el promedio correspondiente.
Ejercicio 5.2. Escribir una función que reciba un número entero k e imprima su descomposición en
factores primos.
Ejercicio 5.3. Manejo de contraseñas
a) Escribir un programa que contenga una contraseñainventada, que le pregunte al usuario la contraseña,
y no le permita continuar hasta que la haya ingresado correctamente.
b) Modificar el programa anterior para que solamente permita una cantidad fija de intentos.
c) Modificar el programa anterior para que después de cada intento agregue una pausa cada vez
mayor, utilizando la función sleep del módulo time.
d) Modificar el programa anterior para quesea una función que devuelva si el usuario ingresó o no
la contraseña correctamente, mediante un valor booleano (True o False).
Ejercicio 5.4. Utilizando la función randrange del módulo random, escribir un programa que obtenga
un número aleatorio secreto, y luego permita al usuario ingresar números y le indique sin son menores
o mayores que el número a adivinar, hasta que el usuario ingreseel número correcto.
Ejercicio 5.5. Algoritmo de Euclides
a) Implementar en python el algoritmo de Euclides para calcular el máximo común divisor de dos
números n y m, dado por los siguientes pasos.
1. Teniendo n y m, se obtiene r, el resto de la división entera de m=n.
2. Si r es cero, n es el mcd de los valores iniciales.
3. Se reemplaza m n, n r, y se vuelve al primer paso.
b) Hacer unseguimiento del algoritmo implementado para los siguientes pares de números: (15,9);
(9,15); (10,8); (12,6).
Ejercicio 5.6. Potencias de dos.
a) Escribir una función es_potencia_de_dos que reciba como parámetro un número natural,
y devuelva True si el número es una potencia de 2, y False en caso contrario.
b) Escribir una función que, dados dos números naturales pasados como parámetros,devuelva la
suma de todas las potencias de 2 que hay en el rango formado por esos números (0 si no hay
ninguna potencia de 2 entre los dos). Utilizar la función es_potencia_de_dos, descripta en
el punto anterior.
8
Ejercicio 5.7. Números perfectos y números amigos
a) Escribir una función que devuelva la suma de todos los divisores de un número n, sin incluirlo.
b) Usando la función anterior,escribir una función que imprima los primeros m números tales que
la suma de sus divisores sea igual a sí mismo (es decir los primeros m números perfectos).
c) Usando la primera función, escribir una función que imprima las primerasmparejas de números
(a,b), tales que la suma de los divisores de a es igual a b y la suma de los divisores de b es igual a
a (es decir las primeras m parejas denúmeros amigos).
d) Proponer optimizaciones a las funciones anteriores para disminuir el tiempo de ejecución.
Ejercicio 5.8. Escribir un programa que le pida al usuario que ingrese una sucesión de números naturales
(primero uno, luego otro, y así hasta que el usuario ingrese ’-1’ como condición de salida). Al final, el
programa debe imprimir cuántos números fueron ingresados, la suma total de losvalores y el promedio.
Ejercicio 5.9. Escribir una función que reciba dos números como parámetros, y devuelva cuántos múltiplos
del primero hay, que sean menores que el segundo.
a) Implementarla utilizando un ciclo for, desde el primer número hasta el segundo.
b) Implementarla utilizando un ciclo while, que multiplique el primer número hasta que sea mayor
que el segundo.
c) Comparar ambasimplementaciones: ¿Cuál es más clara? ¿Cuál realiza menos operaciones?
Ejercicio 5.10. Escribir una función que reciba un número natural e imprima todos los números primos
que hay hasta ese número.
Ejercicio 5.11. Escribir una función que reciba un dígito y un número natural, y decida numéricamente
si el dígito se encuentra en la notación decimal del segundo.
Ejercicio 5.12. Escribir una...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Algoritmo
  • Algoritmo
  • Algoritmos
  • Algoritmos
  • Algoritmos
  • Algoritmos
  • Algoritmos
  • Algoritmos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS