/* Programma 52cppCryptatura Questo programma esegue una sempice cryptatura e decryptatura di una parola inserita da tastiera. Riontino Raffaele 3 AS INF 6-2-'10 I.T.I.S. Ettore Molinari - Milano */ #include #include #include using namespace std; //variabili globali (vengono viste da tutte le funzioni) int i; char parola[50],decriptata[50],criptata[50],alfabeto[50],scelta; void menu(); //prototipo della funzione menù void caricaalfabeto(); //prototipo della funzione caricaalfabeto void criptatura(); // prototipo della funzione criptatura void decriptatura(); // prototipo della funzione decriptatura void prova(); // prototipo della funzione prova void esci(); // prototipo della funzione esci main() // funzione principale { caricaalfabeto(); //chiamata alla funzione caricaalfabeto do{ menu(); //chiamata alla funzione menu switch (scelta) { case 'c' : criptatura(); //vhiamata alla funzione criptatura break; case 'd' : decriptatura(); //chiamata alla funzione decriptatura break; case 'p' : prova(); // chiamata alla funzione prova break; case 'e' : esci(); //chiamata alla funzione esci exit(0); break; default : system ("cls"); cout << "\n\n\tLa scelta inserita non e' presente nel menu'!!!\n\n\t"; system ("pause"); } // chiusura dello switch } while (1 == 1); } // chiusura del main // definizione della funzione caricaalfabeto void caricaalfabeto() { for (i=0;i<26;i++) //caricamento delle lettere dell'alfabeto in un array { alfabeto[i]= 97+i; } } // definizione della funzione menù void menu() { system ("cls"); cout << "\n\t\tProgramma che esegue una semplice criptatura e decriptatura\n\n"; cout << "\t\t\tdi qualsiasi parola inserita da tastiera\n\n"; cout << "\n\tMenu' : \n\n"; cout << "\t- C - Cripta una parola\n\n"; cout << "\t- D - Decripta una parola\n\n"; cout << "\t- P - Criptatura e decriptatura di prova\n\n"; cout << "\t- E - Esci\n\n"; cout << "\tInserisci una scelta e premi invio : "; cin >> scelta; scelta = tolower(scelta); } // definizione della funzione criptatura void criptatura() { system ("cls"); cout << "\n\t\tCriptatura di una parola o di una frase\n\n"; cout << "\n\n\n\tInserisci una parola : "; cin.ignore(); cin.getline (parola,50); cout << "\n\n La parola inserita e' : " << parola; //criptatura i=0; while (parola[i]!= '\0') { parola[i] = tolower(parola[i]); if (parola[i] == ' ') {criptata[i] = ' ';} else { if (parola[i] == 'z') {criptata[i] = alfabeto[0];} else { criptata[i]=alfabeto[(parola[i]-97)+1]; } } i++; if(parola[i] == '\0') { criptata[i]='\0';} //inserisce il finestringa } //chiusura del while cout << "\n\n Criptata diventa : " << criptata << "\n\n\n\t"; system ("pause"); } // definizione della funzione decriptatura void decriptatura() { system ("cls"); cout << "\n\t\tDecriptatura di una parola o di una frase\n\n"; cout << "\n\n\n\tInserisci una parola : "; cin.ignore(); cin.getline (parola,50); cout << "\n\n La parola inserita e' : " << parola; // decriptatura i=0; while (parola[i]!= '\0') { if (parola[i]==' ') {decriptata[i]= ' ';} else { if (parola[i]=='a') {decriptata[i]=alfabeto[25];} else { decriptata[i]=alfabeto[(parola[i]-97)-1]; } } i++; if(parola[i] == '\0') { decriptata[i]='\0';} } //chiusura del while cout << "\n\n Decriptata diventa : " << decriptata << "\n\n\n\t"; system ("pause"); } // definizione della funzione prova void prova() { system ("cls"); cout << "\n\t\tCriptatura di una parola o di una frase\n\n"; cout << "\n\n\n\tInserisci una parola : "; cin.ignore(); cin.getline (parola,50); cout << "\n\n La parola inserita e' : " << parola ; //criptatura i=0; while (parola[i]!= '\0') { parola[i] = tolower(parola[i]); if (parola[i] == ' ') {criptata[i] = ' ';} else { if (parola[i] == 'z') {criptata[i] = alfabeto[0];} else { criptata[i]=alfabeto[(parola[i]-97)+1]; } } i++; if(parola[i] == '\0') { criptata[i]='\0';} //inserisce il finestringa } //chiusura del while //decriptatura i=0; while (criptata[i]!= '\0') { if (criptata[i]==' ') {decriptata[i]= ' ';} else { if (criptata[i]=='a') {decriptata[i]=alfabeto[25];} else { decriptata[i]=alfabeto[(criptata[i]-97)-1]; } } i++; if(criptata[i] == '\0') { decriptata[i]='\0';} } //chiusura del while cout << "\n\n Criptata diventa :"<< criptata; cout << "\n\n Decriptata diventa : " << decriptata << "\n\n\n\t"; system ("pause"); } // definizione della funzione esci void esci() { system ("cls"); cout << "\n\n\t\t\tProgramma terminato\n\n\n\n"; cout << "\t\tRiontino Raffaele 3 AS INF 6-2-'10\n\n\n"; cout << "\t\t I.T.I.S. Ettore Molinari - Milano\n\n\n\t\t"; system ("pause"); }