Solución: else : else : Solución: return x %2==0

Anuncio
Ponticia Universidad Javeriana
Facultad de Ingeniería
300CIP001
Introducción a la Programación
Parcial I
16 de marzo de 2007
En este parcial solo se pueden utilizar los siguientes conceptos vistos en clase:
funciones, condicionales y recursión numérica. Toda función desarrollada por
usted debe llevar la descripción de sus entradas y salida.
Nombre:
1.
2 Puntos
Se desea calcular el valor de venta de cualquier producto del supermercado
LA 13, al que se le conoce el costo de fabricación. Si el producto es de
aseo (tipo 1)
la ganancia para el supermercado será el cinco por ciento (5 %). Si el producto es un
alimento no perecedero (tipo 2) la ganancia será del 10 %. Si, por el contrario, el producto
no es de aseo, ni un alimento no perecedero la ganancia será del 12 %.
La función a implementar debe retornar el precio que se cobrará al cliente por el producto.
Éste incluye el costo de fabricación y la ganancia del supermercado. Además debe tener en
cuenta que al precio que se le cobrará al cliente se le debe agregar el valor del impuesto
a las ventas (IVA). El IVA es del 16 % para todos los productos a excepción de los
alimentos no perecederos por los cuales se cobra un 2 %.
Solución:
def
precioventa ( costo , tipo ) :
if
t i p o ==1:
return
( costo
∗1.05)∗1.16
else :
if
t i p o ==2:
return
( costo
∗1.1)∗1.02
( costo
∗1.12)∗1.16
else :
return
2.
1.5 Puntos
Escriba una función que sume los números pares que hay entre dos enteros
positivos m y n incluyéndolos. Considere que n es menor que m.
Solución:
def
par ( x ) :
return
x %2==0
Ponticia Universidad Javeriana
Facultad de Ingeniería
300CIP001
Parcial I
Introducción a la Programación
16 de marzo de 2007
#pre : n < m
def
s u m a p a r e s ( n ,m) :
if
not
if
n < m:
par ( n ) :
return
n
else :
return
0
else :
if
par ( n ) :
return
n + s u m a p a r e s ( n +1 ,m)
else :
return
3.
1.5 Puntos
s u m a p a r e s ( n +1 ,m)
¾Está usted de acuerdo con la armación de que la siguiente función averigua
si a es menor o igual que b para cualquier par de números a y b, positivos?. Justique
su respuesta haciendo el seguimiento a los llamados:
def
funcion (a , b ) :
if
a==0:
return
True
else :
if
b>=1:
return
f u n c i o n ( a−b , b )
else :
if
b <0:
return
f u n c i o n ( b−a , b )
else :
return
False
Page 2
funcion(4,1) y funcion(5,2)
Descargar