s1Eva_IIT2002_T2 Color de placas de vehículos

Ejercicio: 1Eva_IIT2002_T2 Color de placas de vehículos

[ algoritmo ] [diagrama flujo ]

Para el ejercicio se requiere el uso de vectores para almacenar la placa de cada vehículo, para luego procesar los datos en el bloque de procedimiento. Los datos de placa se simplifican a usar solo la parte numérica, aprovechando para practicar arreglos con Numpy, por lo que primero se requiere conocer cuántos autos se van a registrar como tamaño del arreglo placa. El índice del arreglo será la posición de la placa en el arreglo.

# INGRESO
n = int(input('cuántos autos: '))

placa = numpy.zeros(n+1,dtype=int)
auto = 1
while not(auto>n):
    print('placa[',auto,']: ')
    placa[auto] = int(input('  : '))
    auto = auto+1

El contador de código de color correspondiente también se almacena como un arreglo y en la misma posición usando el índice auto

# PROCEDIMIENTO
# contadores por color
color = numpy.zeros(5+1,dtype=int)

Para el procedimiento, es necesario conocer el dígito menos significativo de la placa (unidades), extrayendo el residuo de 10 del número de placa.

digito = placa[auto]%10

Se usan condicionales para seleccionar el color que le corresponde y contar la placa de cada color asignado, según la tabla proporcionada.

dígito COLOR ¿Cuántos?
1, 2 amarillo (código 1)
3, 4 café (código 2)
5, 6 rojo (código 3)
7, 8 azul (código 4)
9, 0 verde (código 5)
    if (digito==1 or digito==2):
        color[1] = color[1]+1
    if (digito==3 or digito==4):
        color[2] = color[2]+1
    if (digito==5 or digito==6):
        color[3] = color[3]+1
    if (digito==7 or digito==8):
        color[4] = color[4]+1
    if (digito==9 or digito==0):
        color[5] = color[5]+1

Se continúa con el siguiente auto hasta completar todos los autos registrados en el arreglo.

[ algoritmo ] [diagrama flujo ]
..


Algoritmo en Python

# ICM00794-Fundamentos de Computación - FCNM-ESPOL
# 1Eva_IIT2002_T2 Color de placas de vehículos
# propuesta: edelros@espol.edu.ec

import numpy

# INGRESO
n = int(input('cuántos autos: '))

placa = numpy.zeros(n+1,dtype=int)
auto = 1
while not(auto>n):
    print('placa[',auto,']: ')
    placa[auto] = int(input('  : '))
    auto = auto+1

# PROCEDIMIENTO
# contadores por color
color = numpy.zeros(5+1,dtype=int)

# analiza cada auto
auto = 1
while not(auto>n):
    digito = placa[auto]%10
    if (digito==1 or digito==2):
        color[1] = color[1]+1
    if (digito==3 or digito==4):
        color[2] = color[2]+1
    if (digito==5 or digito==6):
        color[3] = color[3]+1
    if (digito==7 or digito==8):
        color[4] = color[4]+1
    if (digito==9 or digito==0):
        color[5] = color[5]+1
    auto = auto+1

# SALIDA
print('Autos por cada color:')
k = 1
while not(k>5):
    print('Color tipo ',k,'= ',color[k])
    k = k+1

Podría intentar realizar el ejercicio con listas, para comparar como se aplican los conceptos.

Tarea: validar que el número de vehículos sea positivo mayor que 0, validar que sean solo tres dígitos en cada placa.

[ algoritmo ] [diagrama flujo ]
..


Diagrama de Flujo

Diagrama de Flujo 1 – Ejercicio Color de placas de automoviles

 

Diagrama de Flujo 2 – Ejercicio Color de placas de automóviles

[ algoritmo ] [diagrama flujo ]


ejercicios resueltos Python parc_iit2002_t2 pdf

ejercicios resueltos Matlab parc_iit2002_t2 pdf