2018_IIT Semana11 – Diccionarios

1. Ejercicios en Clases

Se continúa con los ejercicios planteados en la semana anterior, adaptando la tabla la forma de diccionarios: por registro, y luego por tabla. Se debe adaptar la parte de archivos para trabajar con diccionarios.

1.1 Inscripción universitaria SNNA

http://blog.espol.edu.ec/ccpg1001/2eva_iit2011_t4-inscripcion-universitaria-snna/

2.2 Menú de consejerías académicas
http://blog.espol.edu.ec/ccpg1001/3eva_it2013_t3-menu-de-consejerias-academicas/

http://blog.espol.edu.ec/ccpg1001/3eva_it2013_t2-sortea-consejeros-para-estudiantes/

1.2 Menú SPA con IMC

http://blog.espol.edu.ec/ccpg1001/3eva_it2008_t4-menu-spa-con-imc/

# 3Eva_IT2008_T4 Menú SPA con IMC
# desarrollado con diccionario de diccionarios

cliente = {}
opcion = '0'
while not(opcion=='6'):
    print('1. Registro de Cliente')
    print('2. Mostrar la frecuencia IMC')
    print('3. Mostrar IMC promedio y  IMC mas frecuente')
    print('4. clientes por tipo IMC')
    print('5. cargar datos ')
    print('6. Salir')
    opcion = input('   opcion: ')

    if opcion=='1':
        print('   -- 1. Registro de Cliente')
        nomb = input('nombre: ')
        
        eda1 = int(input('edad: '))
        while not(eda1>=18):
            print('edad mayores a 18')
            eda1 = int(input('edad: '))
            
        peso = float(input('peso: '))
        esta = float(input('estatura: '))

        registro = {'edad': eda1,
                    'peso': peso,
                    'estatura': esta}
        cliente[nomb] = registro

    if opcion=='4':
        print(cliente)

    if opcion=='5':
        print( '... cargando datos ...')
        narchivo = 'clientesspa.txt'
        archivo = open(narchivo, 'r')

        cliente = {}
        linea = archivo.readline()
        while not(linea==''):
            linea = linea.strip('\n')
            partes = linea.split(',')
            nomb = partes[0]
            eda1 = int(partes[1])
            peso = float(partes[2])
            esta = float(partes[3])

            registro = {'edad': eda1,
                        'peso': peso,
                        'estatura': esta}
            cliente[nomb] = registro
            linea = archivo.readline()
            
        archivo.close()
        print(cliente)

        quienes = list(cliente.keys())

        print(' promocion navideña... ')
        for persona in quienes:
            peso = cliente[persona]['peso']
            if peso>=70:
                print(persona)