Esercizi sui caratteri e le stringhe in C++

Ecco un po’ di esercizi sui caratteri e sulle stringhe!

1. Prendere in input un carattere. Se il carattere è compreso tra b e y, stampare il suo precedente e il suo successivo (secondo la tabella ASCII), altrimenti scrivere “Carattere invalido”.

2. Dati in input due caratteri compresi tra A e Z, estrarre casualmente un carattere compreso tra i due. Controlla che i due caratteri siano compresi tra A e Z, che siano in ordine alfabetico e che non siano uno il successivo dell’altro.

3. Data una stringa in input, controlla che questa non sia formata da più di 20 caratteri e che sia composta solo da caratteri alfanumerici (quindi tutti i caratteri devono essere compresi tra A e Z, tra a e z, oppure tra 0 e 9).

Per fare questo, copia la stringa iniziale in una stringa con una dimensione maggiore, ed esegui i controlli su questa.

4. Date tre stringhe in input, controlla che siano state inserite in ordine alfabetico (Suggerimento: utilizza una funzione).

5. Date due stringhe in input di massimo 20 caratteri, creare una terza stringa che contenga i caratteri della prima e della seconda stringa alternati. Se una delle due è più grande dell’altra, aggiungere in coda alla terza stringa i caratteri rimanenti a quella più lunga. Ad esempio:

str1: VACANZA, str2: ISOLA, str3: VIASCOALNAZA

6. Data in input una password, controllarne la sicurezza secondo le seguenti regole:

  • Se la password ha meno di 10 caratteri, è poco sicura;
  • Se la password ha una lunghezza >= 10, ma è composta da solo numeri, solo lettere minuscole o solo lettere maiuscole è poco sicura;
  • Se la password ha una lunghezza >= 10, ed è composta da lettere minuscole e maiuscole, è mediamente sicura;
  • Se la password ha una lunghezza >= 10, ed è composta da lettere minuscole, maiuscole e numeri, è abbastanza sicura;
  • Se la password ha una lunghezza >= 12, ed è composta da lettere minuscole e maiuscole, numeri e simboli (come il ‘.’ o il ‘?’), è sicura.

Suggerimento: utilizza delle variabili flag, controllando ogni singolo carattere della password. Le variabili flag cambieranno il loro stato quando il carattere controllato soddisfa una delle proprietà della password (lettera maiuscola o minuscola, numero, simbolo).

7. BONUS: aggiungere al programma dell’esercizio 6 del codice che controlla se la password contiene tutti caratteri differenti. Se la password ha una lunghezza >=16, contiene lettere minuscole e maiuscole, numeri e simboli, e non contiene caratteri ripetuti, allora è molto sicura.

8. Creare un generatore di password molto sicure (lunghezza >=16, deve contenere lettere maiuscole e minuscole, numeri e simboli tutti diversi).


ESERCIZIO 1


ESERCIZIO 2


ESERCIZIO 3


ESERCIZIO 4


ESERCIZIO 5


ESERCIZIO 6


ESERCIZIO 7


ESERCIZIO 8


Se sei riuscito a completare correttamente tutti gli esercizi, puoi passare all’argomento successivo, le matrici!

In caso contrario non demordere, riprova ad eseguire gli esercizi e a ripassare le basi sui caratteri e sulle stringhe, ognuno ha i suoi tempi!