SFIDA FINALE: Questo laboratorio non contiene codice d'esempio completo. Devi progettare la soluzione applicando tutto ciò che hai imparato.
Scenario: The Bunker Vault v1.0
Siete i programmatori della sicurezza di un bunker sotterraneo. Il programma deve gestire l'accesso al caveau, il monitoraggio dei sensori e la procedura di emergenza.
Specifiche del Progetto
Il software deve seguire rigorosamente queste fasi:
1. Inizializzazione e Login
- Il sistema deve chiedere all'utente di inserire il Codice Identificativo (es. 1234) e il Livello di Autorizzazione (un numero da 1 a 5).
- Se il codice è sbagliato OPPURE il livello è fuori dall'intervallo [1 - 5], l'accesso è negato e il programma deve richiedere i dati (Ciclo iterativo).
2. Menu Operativo
Una volta entrati, deve apparire un menu centrato con \t che permetta di:
- 1. Verifica Sensori: Chiede temperatura e pressione. Allarme se: (Temp < 10 || Temp > 50) && Pressione > 5.
- 2. Apertura Caveau: Il caveau si apre solo se: Il livello autorizzazione è >= 4 E l'utente inserisce la parola chiave "OPEN".
- 3. Stato Sistema: Mostra se il sistema è in modalità "Eco" (Il sistema è in Eco se il livello utente è < 3).
- 0. Logout e Spegnimento: Chiude il programma usando un flag booleano invertito con il NOT.
3. Vincoli Tecnici
- Utilizzate
\ne\tper rendere il terminale simile a un vero computer militare. - Utilizzate costanti o variabili fisse per le password e i limiti di sicurezza.
- Dichiara le variabili necessarie (
intper scelte,boolper il ciclo principale,stringper password). - Crea il primo blocco di controllo per il login.
- Apri il ciclo
whileprincipale basato sul flagbool attivo = true. - Inserisci lo
switchper gestire le diverse funzionalità. - Ricorda di invertire il flag (
attivo = !attivo) nelcase 0.
Consiglio:
Testa una parte del programma alla volta. Prima assicurati che il login funzioni, poi costruisci il menu, e infine aggiungi i controlli di sicurezza complessi con gli operatori logici.
Obiettivo estetico: Il ticket finale (Logout) deve mostrare un riepilogo delle operazioni effettuate in una cornice di caratteri #.