
ecriptacion y desincriptacion de un menssaje
Publicado por daniel molina (2 intervenciones) el 02/06/2017 16:23:25
Realizar un script que codifiqueun mensaje a través de una palabra de cinco letrasdiferentes, todo ingresado por el usuario.Por lo tanto, el programa debe mostrar un mensaje de bienvenida, solicitar el mensaje que se desea encriptar (máximo 300 caracteres), solicitar la palabra de codificación (debe ser de cinco letras), borrar la pantallay mostrar un menú con las siguientes opciones:
a.Ver mensaje encriptado.
b.Des-encriptar y ver mensaje, ingresar clave de codificación (deben ser cinco letras).
c.Borrar mensaje y agregar uno nuevo.
d.Salir.
Para el caso (a), el programa debe mostrar el mensaje encriptado.
Para el caso (b), debe solicitar la palabra de cinco letras, informar si la clave es correcta o incorrecta, des-encriptar el mensaje y mostrarlo por pantalla.
Para el caso (c), debe solicitar la palabra de cincoletras la cual funcionará como contraseña, en caso de estar correcta borrará el mensaje anterior,solicitará uno nuevo y lo encriptará.En caso de estar incorrecta debe salir el mensaje ”clave incorrecta”.
El menú debe ser iterativo (volver a aparecer cada que se ejecuta alguna acción) a menos que se seleccione la opción (d) y en caso de ingresar una opción incorrecta debe mostrar el mensaje “Opción incorrecta”.
Al finalizar el programa este debe mostrar un mensaje de despedida.
Ejemplo de encriptación:Mensaje: Este es el mensaje que quiero encriptar.
Clave: board.
Mensaje encriptado: osto os ol monsbjo qdo qdaorr oncraptbr.
La encriptación consiste en cambiar las vocales del mensaje por las letras de la clave, es decir a=b, e=o, i=a, o=r, u=d
por fa es en c++
hata el momento ehe echo esto hasta el momento:
#include <iostream>
#include <stdio.h>
#include<string.h>
using namespace std;
int main(){
cout<<"Bienvenido usuario\n \n";
system("pause");
system("cls");
char mensaje [305];
char mensaje2 [305];
char clave [8];
char clave2 [8];
char indice [305];
int i=0,opc=0,j=0;
cout<<"Ingrese mensaje de maximo 300 caracteres"<<endl;
gets(mensaje);
cout<<"\nIngresar la clave maximo de 5 letras"<<endl;
cin>>clave;
for (i=0;i<strlen(mensaje);i++){
switch (mensaje[i]){
case 'a':
mensaje[i]=clave[0];
indice[j]=i;
j++;
break;
case 'e':
mensaje[i]=clave[1];
indice[j]=i;
j++;
break;
case 'i':
mensaje[i]=clave[2];
indice[j]=i;
j++;
break;
case 'o':
mensaje[i]=clave[3];
indice[j]=i;
j++;
break;
case 'u':
mensaje[i]=clave[4];
indice[j]=i;
j++;
break;
default:
break;
}
}
sprintf(mensaje2,mensaje);
do{
system("cls");
cout<<"1) ver mensaje encriptado"<<endl;
cout<<"2) des-encriptar mensaje encriptado"<<endl;
cout<<"3) borrar mensaje y agrergar uno nuevo"<<endl;
cout<<"4) salir"<<endl;
cin>>opc;
if(!cin||opc<1||opc>4){
cin.clear();
cin.ignore(1000000000,'\n');
cout<<"opcion incorrecta"<<endl;
system("pause");
}
switch(opc) {
case 1:
cout<<"El mensaje encriptado es : \n \n"<<mensaje2<<endl;
system("pause");
system("cls");
break;
case 2:
Cout<<"Ingrese la clave de des-encriptacion"<<endl;
cin>>clave2;
if (strcmp(clave,clave2)==0){
cout<<"son inguales\n\n"<<endl;
}
else
case 3:
}
}while(opc!=4);
return 0;
}
a.Ver mensaje encriptado.
b.Des-encriptar y ver mensaje, ingresar clave de codificación (deben ser cinco letras).
c.Borrar mensaje y agregar uno nuevo.
d.Salir.
Para el caso (a), el programa debe mostrar el mensaje encriptado.
Para el caso (b), debe solicitar la palabra de cinco letras, informar si la clave es correcta o incorrecta, des-encriptar el mensaje y mostrarlo por pantalla.
Para el caso (c), debe solicitar la palabra de cincoletras la cual funcionará como contraseña, en caso de estar correcta borrará el mensaje anterior,solicitará uno nuevo y lo encriptará.En caso de estar incorrecta debe salir el mensaje ”clave incorrecta”.
El menú debe ser iterativo (volver a aparecer cada que se ejecuta alguna acción) a menos que se seleccione la opción (d) y en caso de ingresar una opción incorrecta debe mostrar el mensaje “Opción incorrecta”.
Al finalizar el programa este debe mostrar un mensaje de despedida.
Ejemplo de encriptación:Mensaje: Este es el mensaje que quiero encriptar.
Clave: board.
Mensaje encriptado: osto os ol monsbjo qdo qdaorr oncraptbr.
La encriptación consiste en cambiar las vocales del mensaje por las letras de la clave, es decir a=b, e=o, i=a, o=r, u=d
por fa es en c++
hata el momento ehe echo esto hasta el momento:
#include <iostream>
#include <stdio.h>
#include<string.h>
using namespace std;
int main(){
cout<<"Bienvenido usuario\n \n";
system("pause");
system("cls");
char mensaje [305];
char mensaje2 [305];
char clave [8];
char clave2 [8];
char indice [305];
int i=0,opc=0,j=0;
cout<<"Ingrese mensaje de maximo 300 caracteres"<<endl;
gets(mensaje);
cout<<"\nIngresar la clave maximo de 5 letras"<<endl;
cin>>clave;
for (i=0;i<strlen(mensaje);i++){
switch (mensaje[i]){
case 'a':
mensaje[i]=clave[0];
indice[j]=i;
j++;
break;
case 'e':
mensaje[i]=clave[1];
indice[j]=i;
j++;
break;
case 'i':
mensaje[i]=clave[2];
indice[j]=i;
j++;
break;
case 'o':
mensaje[i]=clave[3];
indice[j]=i;
j++;
break;
case 'u':
mensaje[i]=clave[4];
indice[j]=i;
j++;
break;
default:
break;
}
}
sprintf(mensaje2,mensaje);
do{
system("cls");
cout<<"1) ver mensaje encriptado"<<endl;
cout<<"2) des-encriptar mensaje encriptado"<<endl;
cout<<"3) borrar mensaje y agrergar uno nuevo"<<endl;
cout<<"4) salir"<<endl;
cin>>opc;
if(!cin||opc<1||opc>4){
cin.clear();
cin.ignore(1000000000,'\n');
cout<<"opcion incorrecta"<<endl;
system("pause");
}
switch(opc) {
case 1:
cout<<"El mensaje encriptado es : \n \n"<<mensaje2<<endl;
system("pause");
system("cls");
break;
case 2:
Cout<<"Ingrese la clave de des-encriptacion"<<endl;
cin>>clave2;
if (strcmp(clave,clave2)==0){
cout<<"son inguales\n\n"<<endl;
}
else
case 3:
}
}while(opc!=4);
return 0;
}
Valora esta pregunta


0