Dev - C++ - ecriptacion y desincriptacion de un menssaje

 
Vista:
Imágen de perfil de daniel molina

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;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 317
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

ecriptacion y desincriptacion de un menssaje

Publicado por john (215 intervenciones) el 02/06/2017 16:27:59
Pero cual es tu duda.?
Que llevas hasta el momento.?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de daniel molina

ecriptacion y desincriptacion de un menssaje

Publicado por daniel molina (2 intervenciones) el 02/06/2017 16:31:51
la desincriptacion con otra clave diferente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar