Categoría: Sol_2Eva 2010-2011-2012

  • s2Eva_IT2010_T3 Registrar donantes ONTOT

    Ejercicio: 2Eva_IT2010_T3 Registrar donantes ONTOT

    Propuesta de solución en Python: py_pdf, también en versión matlab: m_pdf

    Algoritmo en Python

    # ICM00794-Fundamentos de Computación - FCNM-ESPOL
    # 2Eva_IT2010_T3 Registrar donantes ONTOT
    # propuesta solucion: edelros@espol.edu.ec
    
    import numpy as np
    donante = []
    
    opcion = 0
    while not(opcion==5):
        print('1. Ingreso de donantes ')
        print('2. Ingresar estado con prueba medica')
        print('3. Consulta por estado de donantes ')
        print('4. Total de donantes/tipo de sangre')
        print('5. Salir')
    
        opcion = int(input('cual opcion:'))
    
        if (opcion==1):      
            print('1. Ingreso de donantes ')
            texto  = input('nombre: ')
            numero = input('cedula: ')
            numb   = int(input('anio nacimiento:'))
            print('(1)O-, (2) O+, (3) A-, (4)A+, (5)B-, (6)B+, (7)AB-, (8)AB+')
            sangre = int(input('tipo sanguineo:'))
    
            estado = 1
            # crea el registro para un donante
            registro = {'nombre':texto,'cedula':numero,
                        'nacim':numb, 'tipos':sangre,
                        'estado':1}
            
            # añade el registro a la tabla donante
            donante.append(registro)
    
            
        if (opcion==2):
            print('2. Ingresar estado con prueba medica')
            quien  = int(input('cual numero de donante:'))
            cuanto = int(input(' (2) Aceptado , (3) Rechazado :'))
            donante[quien]['estado'] = cuanto
            
        if (opcion==3):
            print('3. Consulta por estado de donantes ')
            cual = int(input('cual estado: '))
            fila = 0
            
            # tamaño de la tabla donante
            n = len(donante)
            while not(fila>=n):
                if (cual==donante[fila]['estado']):
                    print(donante[fila]['nombre'])
                fila = fila + 1
            
        if (opcion==4):
            print('4. Total de donantes/tipo de sangre')
    
            # No se usará la fila 0 de veces
            veces = np.zeros(8+1,dtype=int)
            fila = 0
            while (fila<n):
                k = donante[fila]['tipos']
                veces[k] = veces[k] + 1
                fila = fila + 1
            
            print(veces)
            
        if (opcion==5):
            print(' gracias por usar el software')
            
        if (opcion<1 or opcion>5):
            print('NO ES OPCION DISPONIBLE')
    

    ejercicios resueltos Python 2eva_it2010_t3 pdf

    ejercicios resueltos Matlab 2eva_it2010_t3 pdf