El Objetivo de este TP es practicar y resolver ejercicios vinculados al tema STRUCTS. Para poder resolverlos es necesario tener claro algunos conceptos:
• Funciones
• Algoritmos de ordenamiento
Aplicar Funciones
Modifiquemos el programa anterior para que el listado de cajas se realice desde un único lugar.
Acá debemos implementar funciones, recordá que, una función, es un bloque de código dentro del programa que se encarga de realizar una tarea determinada.
Aplicar While
Una vez mas, modifiquemos el programa anterior para que el usuario pueda cargar una cantidad de cajas N, el programa finaliza cuando se especifica que no se quieren cargar mas cajas.
Para hacer esto, debemos aplicar WHILE, la idea es realizar la carga de cajas mientras el usuario responda que si, pero en caso de que responda que no, finalizamos el while.
También vamos a tener un problema en la impresión, por tanto debemos usar “IF” para solo imprimir del vector las cajas que estén completas.
Ejercicios
1. Impedir las cajas grandes
Alexander recuerda que las cajas que puede almacenar no pueden superar los 120 cm de alto, por lo tanto en la entrada de datos debemos descartar estas y darle aviso al operador cuando alguna de ellas supera el tamaño permitido.
¿Podes desarrollar un programa que permita el ingreso de cajas descartando las que tengan como atributo “alto” mayor a 120 cm para luego imprimir el listado de cajas filtrado?
Código de ayuda:
2. Marcar las cajas frágiles
Alexander nos pide que cada caja que se ingrese con un peso inferior a 570 gramos sea marcada como caja frágil automáticamente. De esta forma puede detectar cuales hay que tratarlas con cuidado y enviarlas a las estanterías mas próximas para que no se dañen en el traslado.
Nuevo atributo:
Frágil (si/no)
¿Podes agregarle al desarrollo anterior el nuevo atributo y marcarlo en SI con cada caja de peso inferior a 570 gramos? La impresión de las cargas frágiles ahora saldrán discriminadas en una impresión aparte.
Código de ayuda:
3. Ordenar las cajas por tamaño
Nuestro magnate de las estanterías descubre que tiene un gran problema: su depósito es un caos. Por lo tanto nos solicita que el listado que se imprime en pantalla, este ordenado de mayor a menor para que las cajas mas pequeñas estén almacenadas en las estanterías mas cercanas y las mas voluminosas vallan al fondo, donde las estructuras se encuentran reforzadas.
Incluyendo las limitaciones de los ejercicios anteriores; ¿Podrías desarrollar un programa que permita ingresar un máximo de 10 cajas y listarlas ordenarlas por su tamaño de mayor a menor?