cifrado c++ problema con strings

Iniciado por Kaemis, 9 Diciembre 2016, 12:13 PM

0 Miembros y 2 Visitantes están viendo este tema.

Kaemis

Buenas, mi problema es que estoy haciendo un programa que pide al usuario una frase y la transcribe a un codigo. No se como continuar ya que tengo bastante lio con los cin.get; El proposito es pedir una frase, que lea cada caracter de la frase y detecte que carácter es.
Por ejemplo: hola mundo --> h o l a ' ' m u n d o
Os dejo con el programa y gracias de antemano:

Código (cpp) [Seleccionar]
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

void pedirFrase();
int cambiarLetra();


int main()
{
int letra;
setlocale(LC_ALL, "spanish");
pedirFrase();
cambiarLetra();
system("pause");
return 0;
}

void pedirFrase()
{
char c;
char str[200];
cout << "Introduce una frase para cifrar: " << endl;
cin.getline(str, 200, '.');
cout << "Tu frase es: " << str << endl;
cin.get();

}

int cambiarLetra()
{
char letra;
if (letra = 'a')
{
cout << "0I" << endl;
}
return letra;
}



Mod: Los códigos deben ir en etiquetas GeSHi

jvm1994

Ok en primera instancia por lo que ví en el if de la función de cifrar tenes un error, deberías poner '==' en vez de '='.

Ahora, deberías generar una comunicación entre tus funciones es decir, no les pasas argumentos? Una no retorna valores?

Planteate un algoritmo de cifrado y pensá el diagrama de tus funciones.

Algo así.

int recibirString(char *miString) - Funcion que pide el string y lo valida.
//
// La función almacena en miString la cadena obtenida.
// Retorna -1 si hay error o 0 si todo está bien.

char cifrarString(char *miString) - Funcion que agarra caracter a caracter y lo convierte, retorna la cadena cifrada.

Después deberías hacer una función que interprete una cadena cifrada y devuelva la descifrada.


"La posibilidad de crear tu mundo."

int main()
{
eMundo * Own = world_new();
if(Own != NULL)
{
    world_create(Own);
}

return 0;
}

Kaemis