s1Eva2018TII_T3 Compras 'Black Friday'

Ejercicio: 1Eva2018TII_T3 Compras 'Black Friday'

Black Friday 01

Los numerales se desarrollan como funciones, dividiendo el ejercicio por partes.

blackfriday etiquetas ejemplo

Ejemplos de arreglos:

C = ['CTR-2424', 'SKU-5675', 'PSS-4542']
P = [ 56.65, 32.00, 22.22]
D = [0, 50, 10]
S = ['Ropa Niños', 'Juguetes', 'Hombre']

literal a

Recibe un código y los arreglos C,P,D y retorna el precio final del producto, aplicando el descuento correspondiente.

preciofinal = precio - precio*\frac{descuento}{100}

Se busca el índice del Código de unacompra usando la instrucción Codigo.index(unacompra)con lo que se puede buscar el Precio y aplicar la fórmula del precio final.

        donde = Codigo.index(unacompra)
        valor = Precio[donde]
        unprecio = valor - Descuento[donde]*valor/100

Para iniciar la búsqueda se verifica que existe unacompra en código, si existe se establece el precio final, caso contrario la respuesta es cero.

Se establece el bloque como la función definida en el enunciado.

# literal a
def calcularPrecio(unacompra,Codigo,Precio,Descuento):
    unprecio = 0
    if (unacompra in Codigo):
        donde = Codigo.index(unacompra)
        valor = Precio[donde]
        unprecio = valor - Descuento[donde]*valor/100
    return(unprecio)

literal b

Recibe una lista de compras con los códigos de los productos, los arreglos C,P,D y aplicando todos los descuentos calcula el valor total a pagar,

Se desarrolla a partir del resultado de la función anterior, pues para unacompra de la lista compras hay que determinar unprecio a pagar.

        unacompra = compras[i]
        unprecio = calcularPrecio(unacompra, Codigo,
                                  Precio, Descuento)
        totalpagar = totalpagar + unprecio

Se acumulan el totalpagar de toda la lista compras y se la convierte a la función descrita en el enunciado.

# literal b
def calcularTotal(compras,Codigo,Precio,Descuento):
    m = len(compras)
    totalpagar = 0
    i = 0
    while not(i>=m):
        unacompra = compras[i]
        unprecio = calcularPrecio(unacompra, Codigo,
                                  Precio, Descuento)
        totalpagar = totalpagar + unprecio
        i = i + 1
    return(totalpagar)

Continuar con los siguientes literales, como se muestra en el algoritmo de ejemplo.

El bloque de procedimiento debe hacer el llamado a las funciones para encontrar las respuestas.


Algoritmo en Python

# CCPG1001 Fundamentos de Programación FIEC-ESPOL
# 1Eva_IIT2018_T3 Compras ‘Black Friday’
# Tarea: descuentosPorSección
import random as rnd
import numpy as np

# literal a
def calcularPrecio(unacompra,Codigo,Precio,Descuento):
    unprecio = 0
    if (unacompra in Codigo):
        donde = Codigo.index(unacompra)
        valor = Precio[donde]
        unprecio = valor - Descuento[donde]*valor/100
    return(unprecio)

# literal b
def calcularTotal(compras,Codigo,Precio,Descuento):
    m = len(compras)
    totalpagar = 0
    i = 0
    while not(i>=m):
        unacompra = compras[i]
        unprecio = calcularPrecio(unacompra, Codigo,
                                  Precio, Descuento)
        totalpagar = totalpagar + unprecio
        i = i + 1
    return(totalpagar)

# literal c
def hallarSecciones(compras,Codigo,Seccion):
    m = len(compras)
    visitar = []
    i = 0
    while not(i>=m):
        unacompra = compras[i]
        donde = Codigo.index(unacompra)
        unaseccion = Seccion[donde]
        if not(unaseccion in visitar):
            visitar.append(unaseccion)
        i = i + 1
    return(visitar)

# literal d
def descuentosPorSección(Descuento,Seccion):
    remate = []
    # Tarea: Desarrollar
    return(remate)

# literal e
# INGRESO
unacompra = input('codigo de una compra: ')

# Tarea: ingresar varias compras
compras = ['SKU-5675', 'PSS-4542']
Codigo  = ['CTR-2424', 'SKU-5675', 'PSS-4542']
Seccion = ['Ropa Niños', 'Juguetes', 'Hombre']
Precio  = [ 56.65, 32.00, 22.22]
Descuento = [0, 50, 10]

# PROCEDIMIENTO
unprecio   = calcularPrecio(unacompra, Codigo,
                            Precio,Descuento)
totalpagar = calcularTotal(compras, Codigo,
                           Precio,Descuento)
visitar = hallarSecciones(compras,Codigo, Seccion)
remate  = descuentosPorSección(Descuento, Seccion)

# SALIDA
print('El precio de : ',unacompra)
print(unprecio)
print('total a pagar de lista de compras: ', totalpagar)
print('tiendas a visitar: ',visitar)
print('remate de productos por seccion: ',remate)

Resultado del algoritmo

codigo de una compra: CTR-2424
El precio de :  CTR-2424
56.65
total a pagar de lista de compras:  35.998
tiendas a visitar:  ['Juguetes', 'Hombre']
remate de productos por seccion:  []
>>> 

Ejercicios resueltos/Ejemplos por año

Ejemplos 1ra Evaluación

1ra Eva 2020-2011

1ra Eva 2010-2001

Ejemplos 2da Evaluación

2da Eva 2020-2011

2da Eva 2010-2001

Ejemplos 3ra Evaluación

3ra Eva 2020-2011

3ra Eva 2010-2001