In [4]:
"""
IPython Notebook v4.0 para python 2.7
Librerías adicionales: Ninguna.
Contenido bajo licencia CC-BY 4.0. Código bajo licencia MIT. (c) Sebastian Flores.
"""
# Configuracion para recargar módulos y librerías
%reload_ext autoreload
%autoreload 2
from IPython.core.display import HTML
HTML(open("style/iwi131.css", "r").read())
Out[4]:
Escriba un programa que pida al usuario ingresar sus tres notas, calcule el promedio (redondeado a entero) y lo felicite solamente si su promedio es mayor a 80, pero siempre le indique su promedio.
Nota 1: 45
Nota 2: 78
Nota 3: 68
Su promedio es 64
Nota 1: 79
Nota 2: 91
Nota 3: 74
Felicitaciones!
Su promedio es 81
In [ ]:
def prom(n1, n2, n3):
suma = n1 + n2 + n3
return int(round(suma / 3.0))
n1 = float(raw_input('Nota 1: '))
n2 = float(raw_input('Nota 2: '))
n3 = float(raw_input('Nota 3: '))
promedio = prom(n1, n2, n3)
print 'Su promedio es', promedio
if promedio > 80:
print 'Felicitaciones!'
Escriba un programa que pida al usuario ingresar todas sus notas hasta obtener un número negativo, calcule el promedio (redondeado a entero) y le indique su promedio.
Nota: 60
Nota: 100
Nota: -1
El promedio de sus 2 notas es 80
Nota: 80
Nota: 60
Nota: 70
Nota: 55
Nota: 100
Nota: -10000
El promedio de sus 5 notas es 73
In [9]:
# Inicialización
suma = 0
n_notas = 0
# Leer todas las notas
print "Ingrese sus notas para calcular el promedio."
print "Ingrese un valor negativo para detener la ejecucion."
nota = float(raw_input('Nota: '))
# Inicio del ciclo while
while nota>=0 and nota<=100:
print "nota es:", nota
suma += nota # Shorthand for suma = suma + nota
n_notas += 1 # Shorthand for n_notas = n_notas + 1
nota = float(raw_input('Nota: '))
#Fin de ciclo while
# Calcular el promedio
promedio = suma / n_notas
promedio_int = int(round(promedio))
print 'El promedio de sus', n_notas, 'notas es', promedio_int
Escriba un programa que pida al usuario cuántas notas desea ingresar, luego le permita ingresar sus notas, calcule el promedio (redondeado a entero) y le indique su promedio.
Numero de Notas: 2
Nota:60
Nota:100
El promedio de sus 2 notas es 80
Numero de Notas: 5
Nota:80
Nota:60
Nota:70
Nota:55
Nota:100
El promedio de sus 5 notas es 73
In [12]:
# Leer cuantas notas se necesitan promediar y aumentar un contador
n_notas = int(raw_input('Numero de Notas: '))
# Inicialización
suma = 0
j = 1
# Leer todas las notas
while j<=n_notas:
nota = float(raw_input('Nota:'))
suma += nota
# Shorthand for suma = suma + n
j += 1 # Shorthand for j = j + 1
# Calcular el promedio
promedio = suma / n_notas
promedio_int = int(round(promedio))
print 'El promedio de sus', n_notas, 'notas es', promedio_int
In [15]:
# Leer cuantas notas se necesitan promediar y disminuir un contador
n_notas = int(raw_input('Numero de Notas: '))
# Inicialización
suma = 0
j = n_notas
# Leer todas las notas
while j>0:
nota = float(raw_input('Nota:'))
suma += nota # Shorthand for suma = suma + n
j -= 1 # Shorthand for j = j - 1
# Calcular el promedio
promedio = suma / n_notas
promedio_int = int(round(promedio))
print 'El promedio de sus', n_notas, 'notas es', promedio_int
Escriba un programa que le permita ingresar todas sus notas separadas por un espacio, calcule el promedio (redondeado a entero) y le indique su promedio.
Ingrese notas separadas con espacio
Notas: 100 80 60 40
El promedio de sus 4 notas es 70
Ingrese notas separadas con espacio
Notas: 55 55 40 100 100 100 10 100 100 10 100 10
El promedio de sus 12 notas es 65
In [16]:
# Leer cuantas notas se necesitan promediar y aumentar un contador
print "Ingrese notas separadas con espacio"
notas_str = raw_input('Notas: ') # string con todas las notas "100 10 55 100"
notas_list = notas_str.split(" ") # Crear lista separando por notas espacios
n_notas = len(notas_list)
suma = 0.0
j = 0
while j<n_notas:
suma += float(notas_list[j])
j += 1
# Calcular el promedio
promedio = suma / n_notas
promedio_int = int(round(promedio))
print 'El promedio de sus', n_notas, 'notas es', promedio_int
Realice un programa computacional que calcule el factorial de un entero positivo provisto por el usuario.
Ingrese un entero positivo: 3
El factorial de 3 es 6
Ingrese un entero positivo: 4
El factorial de 4 es 24
Ingrese un entero positivo: 5
El factorial de 5 es 120
Ingrese un entero positivo: 20
El factorial de 20 es 2432902008176640000
In [19]:
# Solucion estudiantes
N = int(raw_input("Ingrese un entero positivo: "))
j = 1 # contador
N_factorial = 1 # resultado
while j<=N:
N_factorial=N_factorial*j
j+=1
print "El factorial de", N, "es", N_factorial
In [ ]:
N = int(raw_input("Ingrese un entero positivo: "))
j = 1 # contador
N_factorial = 1 # resultado
while j<=N:
N_factorial = N_factorial * j
j = j +1
print "El factorial de", N, "es", N_factorial
In [ ]:
N = int(raw_input("Ingrese un entero positivo: "))
j = 1 # contador
N_factorial = 1 # resultado
while j<=N:
N_factorial = N_factorial * j
j = j +1
print "El factorial de", N, "es", N_factorial
Globales | Locales | ||||||||
---|---|---|---|---|---|---|---|---|---|
In [ ]:
# Solucion estudiantes
fibonacci(12)
In [25]:
def fibonacci(n):
a = 1
print a,
b = 1
print b,
count = 2
while count < n:
aux = a
a = b
b = aux + b
count += 1
print b,
print ""
fibonacci(5)
fibonacci(10)
fibonacci(20)
fibonacci(-1)
In [26]:
def fibonacci(n):
a = 1
b = 1
fib = str(a) + " " + str(b)
count = 2
while count < n:
aux = a
a = b
b = aux + b
count += 1
fib += " " + str(b)
return fib
n = 5
print fibonacci(n)
Globales | Locales | ||||||||
---|---|---|---|---|---|---|---|---|---|
Implemente la función suma_cuadrados que sume los primeros cuadrados perfectos menores a un número $n$.
print suma_cuadrados(6)
91
print suma_cuadrados(100)
385
print suma_cuadrados(500)
3795
suma_cuadrados(0): 0 = 0
suma_cuadrados(1): 1 = 0 + 1
suma_cuadrados(2): 5 = 0 + 1 + 4
suma_cuadrados(3): 14 = 0 + 1 + 4 + 9
suma_cuadrados(4): 30 = 0 + 1 + 4 + 9 + 16
suma_cuadrados(5): 55 = 0 + 1 + 4 + 9 + 16 + 25
suma_cuadrados(6): 91 = 0 + 1 + 4 + 9 + 16 + 25 + 36
In [ ]:
# FIX ME
In [ ]:
def suma_cuadrados(n):
j = 0
suma = 0
while j**2 <= n:
suma = suma + j**2
j += 1
return suma
print suma_cuadrados(5)
print suma_cuadrados(10)
print suma_cuadrados(100)
print suma_cuadrados(500)
In [ ]:
def suma_cuadrados(n):
j = 0
suma = 0
while j**2 <= n:
suma = suma + j**2
j += 1
return suma
print suma_cuadrados(5)
Globales | Locales | ||||||||
---|---|---|---|---|---|---|---|---|---|
In [ ]:
def suma_cuadrados_explained(n):
j = 0
suma = 0
while j**2 <= n:
suma = suma + j**2
print str(suma) + " = " + " + ".join([str(i**2) for i in range(j+1)])
j += 1
return suma
suma_cuadrados_explained(100)
Elegir al menos uno de los ejercicios propuestos en http://progra.usm.cl/apunte/ejercicios/1/index.html en la sección de Ciclos: