#include #include #include #include #include #include

<iostream> <cstdlib> <ctime> <cstring> <string> <cctype>

using namespace std; string EncriptarMensaje(string encriptado); string DesencriptarMensaje(string desencriptado); void encriptar(string&); void encriptar2(string&); int codigocorrecto, opcion; int main() { system("color f5"); string codigo("?&1menos1+4mas5-1es8&?"); string codigo2; encriptar(codigo); cout<<"\n\t\t\t\t"<<codigo<<endl; cout<<"\n Introduce el codigo de seguridad: \n \t\t: "; getline(cin,codigo2); encriptar2(codigo2); //cout<<"\n"<<codigo2<<endl; while(codigo.compare(codigo2)==0) { cout<<"\n\t\tCodigo correcto!"; system("color ac"); codigocorrecto=1; break; } if(codigo.compare(codigo2)!=0) { cout<<"\n\n\t\t ERROR, el codigo no es el correcto \n Ahora, "; system("color bc"); system("PAUSE"); return EXIT_SUCCESS; } while(codigocorrecto=1) { cout<<"\n\n\t\tSeleccione una opcion:\n\t\t\t1.-Encriptar un mensaje .\n\t\t\t2.-Desencriptar un mensaje."; cin>>opcion; switch(opcion) { case 1: { string encriptado; cout <<"\n\nEscriba el mensaje que desee encriptar:\t"; cin.ignore(256, '\n'); getline(cin, encriptado); string temp(encriptado); EncriptarMensaje(encriptado); cout <<"Su mensaje encriptado es:\t"<<EncriptarMensaje(encri ptado)<<endl; break; }

case 2: { string desencriptado; cout <<"\n\nEscriba el mensaje que desee desencriptar:\t"; cin.ignore(256, '\n'); getline(cin,desencriptado); string temp2(desencriptado); DesencriptarMensaje(desencriptado); cout <<"El mensaje original es:\t"<<DesencriptarMensaje(dese ncriptado)<<endl; break; } } system("PAUSE"); return EXIT_SUCCESS; return 0; } } string EncriptarMensaje(string encriptado) { int longitudencriptado=encriptado.length(); char a; string encriptadoauxiliar(encriptado); for(int i=0;i<=(longitudencriptado-1);i++) { a=encriptado.at(i); int b=(int)a; b+=2; if(b>254){b=254;} a=(char)b; encriptadoauxiliar.insert(i,1,a); } string encriptadofinal(encriptadoauxiliar,0,longitudencriptado); return encriptadofinal; } string DesencriptarMensaje(string desencriptado) { int longituddesencriptado=desencriptado.length(); char a; string desencriptadoauxiliar(desencriptado); for (int i=0;i<=(longituddesencriptado-1);i++) { a=desencriptado.at(i); int b=(int)a; b-=2; a=(char)b; desencriptadoauxiliar.insert(i,1,a); } string desencriptadofinal(desencriptadoauxiliar,0,longituddesencriptado) ; return desencriptadofinal; } void encriptar(string &codigo)

{ int longitudcodigo=codigo.length(); char a; string codigoauxiliar(codigo); for (int i=0;i<=(longitudcodigo-1);i++) { a=codigo.at(i); int b=(int)a; b+=2; if(b>254){b=254;} a=(char)b; codigoauxiliar.insert(i,1,a); } string codigoencriptado(codigoauxiliar,0,longitudcodigo); codigo=codigoencriptado; } void encriptar2(string &codigo2) { int longitudcodigo2=codigo2.length(); char a; string codigoauxiliar2(codigo2); for (int i=0;i<=(longitudcodigo2-1);i++) { a=codigo2.at(i); int b=(int)a; b+=2; if(b>254){b=254;} a=(char)b; codigoauxiliar2.insert(i,1,a); } string codigoencriptado2(codigoauxiliar2,0,longitudcodigo2); codigo2=codigoencriptado2; }

Sign up to vote on this title
UsefulNot useful