Codificación aprenderaprogramar.<com: CU00170A
EJERCICIO
Un fabricante de maquinaria envía un archivo a un almacén donde se encuentran los números de serie (5 dígitos) de una partida de maquinaria enviada, organizados en Dato(1), Dato(2), ..., Dato(n). Informa de lo siguiente: el archivo empieza con palas cargadoras siendo la correspondiente al número de serie 78345 la última, sigue con retroexcavadoras siendo el número de serie 33287 el último, y termina con dumpers siendo el número de serie 63287 el último.
Se quiere desarrollar un programa que muestre el tipo de máquina y todos los números de serie correspondientes.
SOLUCIÓN
Pseudocódigo:
1. Inicio [Pseudocódigo aprenderaprogramar.com] 2. i = 1 3. Leer Dato(i) 4. Mostrar “Números de serie de palas cargadoras” 5. Mientras Dato(i) <> 63287 Hacer Mostrar Dato(i) Si Dato(i) = 78345 Entonces Mostrar “Números de serie de retroexcavadoras” FinSi Si Dato(i) = 33287 Entonces Mostrar “Números de serie de dumpers” FinSi i = i + 1 Leer Dato(i) Repetir 6. Mostrar Dato(i) 7. Mostrar “Finalizada la extracción el total de máquinas es”, i 8. Fin |
Diagrama de flujo:
Comentarios: Antes de llegar al diseño final de un algoritmo se pueden tantear distintas vías de resolución o algoritmos alternativos para definir cuál es el mejor funcionamiento.
Hay que prestar especial atención a la entrada en los bucles y a la salida de los mismos. En este caso, se lee el primer dato fuera del bucle para nada más entrar en él mostrarlo. En cuanto a la salida, el último dato se extrae dentro del bucle, y es el que da lugar a la salida del mismo. Sin embargo es un dato válido, por lo que “se procesa” en la línea 6. Hay que evaluar con atención si los señaleros se deben procesar o no.
Para un caso supuesto con los siguientes datos:
Dato |
Nº de inventario |
1 |
11252 |
2 |
22541 |
3 |
78345 |
4 |
47854 |
5 |
33287 |
6 |
25478 |
7 |
63287 |
El programa daría lugar a la siguiente solución:
Números de serie de palas cargadoras: 11252 22541 78345
Números de serie de retroexcavadoras: 47854 33287
Números de serie de dumpers: 25478 63287
Finalizada la extracción el total de máquinas es 7 |
Para acceder a la información general sobre este curso y al listado completo de entregas pulsa en este link: Ver curso completo.
Para hacer un comentario o consulta utiliza los foros aprenderaprogramar.com, abiertos a cualquier persona independientemente de su nivel de conocimiento.