s1Eva2010TII_T1 Censo de instrucción por género

Ejercicio: 1Eva2010TII_T1 Censo de instrucción por género



Los datos se almacenan en vectores y se los tabula/cuenta en una matriz.  Las filas representan la instrucción y columna el género.

iGénero [i]Instrucción [i]Género:
1. Masculino
2. Femenino
Instrucción:
1. Primaria
2. Secundaria
3. Superior
112
223
313
.........
n......

Se usará desde la casilla 1, por lo que el tamaño del arreglo es n+1 al no usar la casilla cero.

n = int(input('¿Cuántos formularios: '))

genero = np.zeros(n+1,dtype=int)
instruccion = np.zeros(n+1,dtype=int)
i = 1
while not(i>n):
    print('Formulario:',i)
    genero[i] = int(input('  genero: '))
    instruccion[i] = int(input('  instruccion: '))
    i = i+1

Se inicializan los contadores al inicializar la matriz para luego procesar los datos de todos los formularios registrados.

 Masculino (1)Femenino (2)
Primaria (1)  
Secundaria (2)  
Superior (3)  
tabla = np.zeros(shape=(3+1,2+1),dtype=int)
i = 1
while not(i>n):
    f = instruccion[i]
    c = genero[i]
    tabla[f,c] = tabla[f,c]+1
    i = i + 1

Para facilitar la lectura del algoritmo se usan como variables f y c para referenciar las filas y columnas. Una forma más larga de solución podría usar contadores individuales para contar primaria/masculino, primaria/femenino, etc.

Tarea: validar el ingreso de género e instrucción por cada formulario



Algoritmo en Python

# ICM00794-Fundamentos de Computación - FCNM-ESPOL
# 1Eva_IIT2010_T1 Censo de instrucción por género
# propuesta: edelros@espol.edu.ec

import numpy as np

#INGRESO
n = int(input('¿Cuántos formularios: '))

genero = np.zeros(n+1,dtype=int)
instruccion = np.zeros(n+1,dtype=int)

i = 1
while not(i>n):
    print('Formulario:',i)
    genero[i] = int(input('  genero: '))
    instruccion[i] = int(input('  instruccion: '))
    i = i+1

# PROCEDIMIENTO
tabla = np.zeros(shape=(3+1,2+1),dtype=int)
i = 1
while not(i>n):
    f = instruccion[i]
    c = genero[i]
    tabla[f,c] = tabla[f,c]+1
    i = i + 1

# SALIDA
print('Instr  M  F ')
f = 1
while not(f>3):
    c = 1
    cadena = ''
    while not(c>2):
        cadena = cadena+' '+str(tabla[f,c])
        c = c + 1
    print('   '+str(f)+': '+cadena)
    f = f + 1

Resultado del algoritmo

¿Cuántos formularios: 5
Formulario: 1
  genero: 1
  instruccion: 2
Formulario: 2
  genero: 1
  instruccion: 2
Formulario: 3
  genero: 2
  instruccion: 1
Formulario: 4
  genero: 2
  instruccion: 1
Formulario: 5
  genero: 2
  instruccion: 3
Instr  M  F 
   1:  0 2
   2:  2 0
   3:  0 1
>>> 


Diagrama Flujo: Mientras-Repita

diagrama Censo Instrucción 01
diagrama Censo Instrucción 02



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