elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Como cifrar letra por letra en C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 4 5 6 7 Ir Abajo Respuesta Imprimir
Autor Tema: Como cifrar letra por letra en C++  (Leído 64,922 veces)
Royca3

Desconectado Desconectado

Mensajes: 45



Ver Perfil WWW
Como cifrar letra por letra en C++
« en: 10 Junio 2013, 06:31 am »

Hola amigos bueno se me ha pasado por la cabeza la idea de crear una forma de cifrar letras y números :D pues bueno ya he creado la forma de cifrado pero no quise quedarme en esto nada mas pensé en hacer un programa que me pidiera una palabra o una frase y que la ecripte, pero los únicos comandos que me sabia eran los de la Shell X’D pues decidí leer un poco sobre C++, Bueno y de lectura en lectura me ayudaron con lo siguiente :

Código:
#include<stdio.h> 
#include<conio.h>
#include<dos.h>
void main(void)
{
printf("Ingrese la palabra: ");
scanf("%s");
char cad[10]="%s";
clrscr();
for(int a=0;a<10;a++)
{
printf("%c\n",cad[a]);
}
getch();
}


Pero el código no realiza la función que yo quiero (aclaro hay lo único que hace es pedirle al usuario que ingrese una palabra y la separe letra por letra)  pero esa no es mi meta si alguien podría ayudarme con esto le agradecería sinceramente.

Saludos.   :laugh:


En línea

Homo erectus
amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Como cifrar letra por letra en C++
« Respuesta #1 en: 10 Junio 2013, 07:49 am »

Código
  1. #include<stdio.h>
  2.  
  3. int main()
  4. {
  5.  char Palabra[256];
  6.  int i = 0;
  7.  fgets (Palabra,255,stdin);
  8.  
  9.  for  (i = 0; i < strlen(Palabra);i++)
  10.       printf("%c \n",Palabra[i]);
  11.  
  12.  getchar(); // pausa
  13.  getchar();
  14.  
  15.  return 0;
  16. }

Has cumplido varias violaciones a la norma (void main, librería conio,dos y uso de getch()).


En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Como cifrar letra por letra en C++
« Respuesta #2 en: 10 Junio 2013, 08:19 am »

Cita de: Royca3 link=topic=392162.msg1859787#msg1859787

Pero el código no realiza la función que yo quiero (aclaro hay lo único que hace es pedirle al usuario que ingrese una palabra y la separe letra por letra)  pero esa no es mi meta si alguien podría ayudarme con esto le agradecería sinceramente.


¿Y que más querías que hiciera?. El código hace ni más ni menos lo que tú le has implementado y, lo único que has hecho es imprimir una cadena introducida por teclado,  ¿crees que te adivina el pensamiento y "él" añade el resto del código?. Y aún el caso de imprimir la cadena es aventurado, toda vez que presupones que el usuario va a introducir una cadena de justitos diez caracteres. Mejor sería:

Código
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. int main(void)
  4. {
  5.    int i=0;
  6.    char cadena[10];
  7.    printf("Ingrese la palabra: ");
  8.    scanf("%10s",&cadena);
  9.    for(i=0;cadena[i]!='\0';i++)
  10.        printf("%c ",cadena[i]);
  11.    getchar();
  12.    return 0;
  13. }


De esta manera te aseguras "tomar" sólo diez caracteres.

Además de lo comentado por amchacon te aconsejaría leer algo sobre el tema de cifrado.

Si estas empezando te diría que te mires el cifrado de César, así para empezar con uno sencillo.


Saluditos! .... ..


P.D: amchacon ,te faltó en el código la librería string.h para hacer uso de strlen. Sí, ya sé que son las prisas. A esta hora y ya estamos como motos  ;)  ;)
En línea

daryo


Desconectado Desconectado

Mensajes: 1.070



Ver Perfil WWW
Re: Como cifrar letra por letra en C++
« Respuesta #3 en: 10 Junio 2013, 16:56 pm »

aca tienes un ejemplo en c++  :D

cifrar.cpp
Código
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.    string frase;
  9.    cout << "escriba una frase" << endl;
  10.    getline(cin,frase);
  11.    int n=1;
  12.    for(int tamano=0;tamano<frase.size();tamano++)
  13.    {
  14.        char letra=frase[tamano]+n;
  15.        cout << letra;
  16.        n++;
  17.        if(n>10)
  18.        {
  19.            n=1;
  20.        }
  21. }
  22.  
descifrar.cpp
Código
  1. #include <iostream>
  2. #include <string>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.    string frase;
  9.    cout << "escriba una frase cifrada" << endl;
  10.    getline(cin,frase);
  11.    int n=1;
  12.    for(int tamano=0;tamano<frase.size();tamano++)
  13.    {
  14.        char letra=frase[tamano]-n;
  15.        cout << letra;
  16.        n++;
  17.        if(n>10)
  18.        {
  19.            n=1;
  20.        }
  21.    }
  22. }
  23.  
« Última modificación: 10 Junio 2013, 17:01 pm por daryo » En línea

buenas
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Como cifrar letra por letra en C++
« Respuesta #4 en: 10 Junio 2013, 18:56 pm »

aca tienes un ejemplo en c++  :D

Y aquí uno en C:

Código
  1. #include<stdio.h>
  2.  
  3. int main()
  4. {
  5.    char Palabra[256];
  6.    int i = 0;
  7.    puts ("\Introduzca palabra o frase a cifrar:");
  8.    fgets (Palabra,255,stdin);
  9.    puts ("\nLa frase es:");
  10.    for  (i = 0;Palabra[i]!='\0';i++)
  11.       printf("%c ",Palabra[i]);
  12.    puts ("\nCiframos la frase");
  13.    for  (i = 0; Palabra[i]!='\0';i++)
  14.       {
  15.           Palabra[i]+=i;
  16.           printf("%c ",Palabra[i]);
  17.       }
  18.    puts ("\n\nDesiframos la frase");
  19.    for  (i = 0; Palabra[i]!='\0';i++)
  20.       {
  21.           Palabra[i]-=i;
  22.           printf("%c ",Palabra[i]);
  23.       }
  24.    puts ("\n\nPresione ENTER para salir");
  25.    getchar();
  26.    return 0;
  27. }
  28.  


Saluditos! .... ..
« Última modificación: 10 Junio 2013, 19:03 pm por leosansan » En línea

Royca3

Desconectado Desconectado

Mensajes: 45



Ver Perfil WWW
Re: Como cifrar letra por letra en C++
« Respuesta #5 en: 10 Junio 2013, 19:47 pm »

Y aquí uno en C:

Código
  1. #include<stdio.h>
  2.  
  3. int main()
  4. {
  5.    char Palabra[256];
  6.    int i = 0;
  7.    puts ("\Introduzca palabra o frase a cifrar:");
  8.    fgets (Palabra,255,stdin);
  9.    puts ("\nLa frase es:");
  10.    for  (i = 0;Palabra[i]!='\0';i++)
  11.       printf("%c ",Palabra[i]);
  12.    puts ("\nCiframos la frase");
  13.    for  (i = 0; Palabra[i]!='\0';i++)
  14.       {
  15.           Palabra[i]+=i;
  16.           printf("%c ",Palabra[i]);
  17.       }
  18.    puts ("\n\nDesiframos la frase");
  19.    for  (i = 0; Palabra[i]!='\0';i++)
  20.       {
  21.           Palabra[i]-=i;
  22.           printf("%c ",Palabra[i]);
  23.       }
  24.    puts ("\n\nPresione ENTER para salir");
  25.    getchar();
  26.    return 0;
  27. }
  28.  


Saluditos! .... ..

Muchas gracias a todos y perdón por mi ignorancia....  :-X
Bueno Te agradezco a ti leosansan Este Programa era el que buscaba...
 ;D

Saludos.
(Excelente Foro ;)
En línea

Homo erectus
daryo


Desconectado Desconectado

Mensajes: 1.070



Ver Perfil WWW
Re: Como cifrar letra por letra en C++
« Respuesta #6 en: 10 Junio 2013, 20:03 pm »


(Excelente Foro ;)
si que lo es  ;D
En línea

buenas
Royca3

Desconectado Desconectado

Mensajes: 45



Ver Perfil WWW
Re: Como cifrar letra por letra en C++
« Respuesta #7 en: 10 Junio 2013, 20:57 pm »

si que lo es  ;D

 ;-)  ;-)  ;-)

Soy nuevo y ya me encanto xD
En línea

Homo erectus
Puntoinfinito


Desconectado Desconectado

Mensajes: 919


#! /win/archlinux


Ver Perfil WWW
Re: Como cifrar letra por letra en C++
« Respuesta #8 en: 10 Junio 2013, 21:00 pm »

Aquí otro ejemplo caesar:

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6.  
  7.    string palabra = ""; //Creamos e inicalizamos variables
  8.    int numero = 0;
  9.    int TamanyoPalabra = 0;
  10.  
  11.    cout << "Palabra? >> "; cin >> palabra;  // 1  i  2 paso
  12.    cout << "Veces a correr >> "; cin >> numero;  // 3 paso
  13.  
  14.    TamanyoPalabra = palabra.length(); // 4 paso
  15.  
  16.    for (int i = 0; i < TamanyoPalabra ; i++) { // 4 paso
  17.        for (int z = 0; z < numero; z++) { palabra[i]++; } // 5 paso
  18.    } // 6 paso
  19.  
  20.    cout << palabra; // Mostrar palabra cifrada
  21.  
  22.    return 0; //Salir
  23.  
  24. }

FUENTE Y MÁS INFORMACIÓN DEL CODE: http://www.infiniterware.net/tutoriales/programacion-general/Caesar-cipher-C++.html

Saluuuuuuu2
En línea

AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Como cifrar letra por letra en C++
« Respuesta #9 en: 10 Junio 2013, 21:51 pm »

Aquí otro ejemplo caesar:

Pues no, ni el tuyo ni el de daryo ni el mío con cifrados tipo César, al menos como yo veo los códigos.

Yo lo que hice en el post fue sugerirle que lo mirará pero no dije que en mi código lo aplicará. Me fui, como daryo, a lo fácil que es incrementar la variable letra sencillamente, mientras que en el cifrado César hay que tener en cuenta que si se llega a la las letras finales del abecedario se cuentan las últimas y, si faltan, se sigue la suma por las primeras.

Más información en Cifrado César cortesía de Wikipedia.


Saluditos! .... ..
« Última modificación: 10 Junio 2013, 21:55 pm por leosansan » En línea

Páginas: [1] 2 3 4 5 6 7 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Codificacion en archivos bat, letra ñ
Scripting
santi810 3 12,239 Último mensaje 1 Diciembre 2013, 18:57 pm
por Eleкtro
[DUDA] Como Desactivar Dispositivos Portátiles Para Que Se Le Asigne Una Letra
Windows
KZN 3 2,916 Último mensaje 11 Marzo 2014, 17:00 pm
por Randomize
Dibujar letra 'T'
PHP
luchi 2 2,387 Último mensaje 20 Abril 2014, 22:14 pm
por luchi
Como con una letra direccionarme a la tabla/registro?
Programación C/C++
enzopaez14 1 2,109 Último mensaje 5 Septiembre 2016, 02:50 am
por AlbertoBSD
Comparar letra una letra en un array, con una letra del abcdario
Programación C/C++
Naimaderis 2 3,964 Último mensaje 10 Marzo 2017, 04:24 am
por Naimaderis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines