21
Aprender a programar desde cero / Re:Ayuda Con BC y C++
« en: 03 de Febrero 2013, 22:07 »
Hola, te pongo aquí un código que al menos a mí me funciona, no sé qué compilador estás usando así que a lo mejor tienes que hacerle alguna adaptación para poder ejecutarlo con tu compilador
Veo en tu código cosas que no se entienden
encrip=cadena;
cadena=encrip+2;
Si encrip es un número no puedes asignarle una cadena
Aquí te dejo el código, a ver si te sirve, ten en cuenta que las cadenas son arrays de caracteres, de ahí que tengas que usar bucles o bien for o bien do while
Veo en tu código cosas que no se entienden
encrip=cadena;
cadena=encrip+2;
Si encrip es un número no puedes asignarle una cadena
Aquí te dejo el código, a ver si te sirve, ten en cuenta que las cadenas son arrays de caracteres, de ahí que tengas que usar bucles o bien for o bien do while
Código: [Seleccionar]
#include<stdio.h>
#include<string.h>
int main() {
int encrip=0;
int i=0;
typedef char TipoCadena[40]; //Declaramos el TipoCadena
TipoCadena cadena; //Declaramos la variable cadena
printf("ingrese el texto a encriptar \n");
scanf("%s",&cadena);
printf("El numero de caracteres en la cadena es %d \n",strlen(cadena));
typedef char TipoCadEncriptada[strlen(cadena)]; //Declaramos el tipo CadenaEncriptada
TipoCadEncriptada cadenaEncriptada;
do {
printf("Caracter extraido: %c con valor ascii %d \n",cadena[i], int(cadena[i]));
encrip = int(cadena[i]) +2;
cadenaEncriptada[i] = char(encrip);
printf("Caracter encriptado: %c con valor ascii %d \n",cadenaEncriptada[i], int(cadenaEncriptada[i]));
i=i+1;
} while (i < strlen(cadena));
printf("El texto encriptado es ");
for (int j=0; j<strlen(cadena); j++) {
printf("%c", cadenaEncriptada[j]);
}
return 0;
}