SONO NUOVO DEL SETTORE E NON RIESCO PROPRIO A RISOLVERLO.. VORREI POTER AVERE UNA BASE DI RIFERIMENTO DA CUI PARTIRE.. QUINDI RINGRAZIEREI CHIUNQUE RISOLVESSE QUESTO PROBLEMA.. GRAZIE A TUTTI IN ANTICIPO..
LINGUAGGIO C
Creare una struct account, che preveda nome, cognome, data di nascita, email, password e creare un vettore di 20 account utente.
Il sistema deve anche essere in grado di associare a ciascuna password il proprio livello di sicurezza. Una password è detta ‘sicura’ se contiene più di 5 caratteri speciali e numeri (in totale). Una password è ‘mediamente sicura’ se il numero è compreso tra 3 e 5, mentre è poco sicura se il totale è inferiore a 3.
Implementare un programma che:
(2) Mostri in output il nome e cognome dell’utente più giovane e dell’utente più vecchio
(3) Per ogni account, chieda all’utente se vuole generare la password in automatico o se vuole inserirla a mano
Nel primo caso il sistema deve chiedere all’utente il livello di complessità richiesto (poco-mediamente-molto sicura), e mostrare in output la password generata
Nel secondo caso il sistema deve controllare che la password inserita risponda ai vincoli minimi: esattamente 8 caratteri di lunghezza, almeno 1 maiuscola ed almeno un numero (chiaramente deve ciclare finchè la password inserita non è corretta)
(4) Il sistema deve infine mostrare tutti i dati degli utenti che hanno una password non sicura e nome e cognome degli utenti che hanno una password molto sicura
INPUT
- Nome, Cognome, Data di Nascita, email e password per 20 utenti
OUTPUT
- Dati anagrafici di tutti gli utenti
- Nome e Cognome dell'utente più vecchio
- Nome e Cognome degli utenti che hanno una password non sicura
- Nome e Cognome degli utenti che hanno una password molto sicura
NOTE
Implementare gli opportuni controlli per generare dei valori di input realistici.
(es. l’email deve contenere la chiocciola, la data di nascita deve essere realistica, etc.)
ESTENSIONI
- Aggiungere alla struct ‘account’ anche un membro ‘Indirizzo’, e assicurarsi che sia realistico (che inizi con ‘Via’ , ‘Piazza’, ‘Corso’, etc.)
- Nel mostrare in output la password, offuscare tutte le lettere esclusa la prima e l’ultima (es. password --> p******d).
- Generare in automatico degli indirizzi email realistici concatenando porzioni di dati anagrafici (es. nomeCognomeAnno) e domini reali.