Autor
|
Tema: Cifrado de cesar en [C] [?] (Leído 5,881 veces)
|
katy09811
Desconectado
Mensajes: 1
|
disculpen tengo un problema en c ya que que tengo q hacer que un programa m de el cifrado de cesar tengo esto pero no m sale la frac cifrada alguien que m ayude por fa,gracias #include<stdio.h> #define LONG_MAX 30 void mayuscula(char *fraseOriginal_prt); int cifrar(char *fraseOriginal_ptr,char *fraseConvertida_ptr,int clave); int main(){ char fraseOriginal[LONG_MAX]; char fraseConvertida[LONG_MAX]; int clave,opcion; printf("Cifrado de cesar"); printf("\nCadena original:"); fgets(fraseOriginal,LONG_MAX,stdin); mayuscula(fraseOriginal);//En este caso la misma cadena de entrada guardara los valores convertidos a mayuscula. printf("Ingrese clave:"); scanf("%d", &clave); printf("Digite 1 para cifrar o 2 para descifrar:"); scanf("%d",&opcion); printf("\nCadena mayuscula:%s",fraseOriginal); if(opcion == 1){ cifrar(fraseOriginal,fraseConvertida,clave); printf("Cadena cifrada:%s",fraseConvertida); // }else if(opcion == 2){ // descifrar(fraseOriginal,fraseConvertida,clave); // printf("Cadena descifrada:%s",fraseConvertida); }else{ printf("OPCION NO RECONOCIDA"); } return 0; } void mayuscula(char *fraseOriginal_ptr){ while(*fraseOriginal_ptr){ if(*fraseOriginal_ptr>='a' && *fraseOriginal_ptr<='z'){ *fraseOriginal_ptr = *fraseOriginal_ptr-32; } fraseOriginal_ptr++; } return ; } int cifrar(char *fraseOriginal_ptr,char *fraseConvertida_ptr,int clave){ while(*fraseOriginal_ptr){ if(*fraseOriginal_ptr>='a' && *fraseOriginal_ptr<='z'){ *fraseOriginal_ptr = *fraseConvertida_ptr+clave; } fraseOriginal_ptr++; } while(*fraseConvertida_ptr){ if(*fraseConvertida_ptr>='a' && *fraseConvertida_ptr<='z'){ *fraseConvertida_ptr = *fraseConvertida_ptr-32; } fraseConvertida_ptr++; } return fraseConvertida_ptr; }
Mos: los códigos debeniren etiquetas GeSHi
|
|
« Última modificación: 19 Julio 2015, 21:47 pm por engel lex »
|
En línea
|
|
|
|
crack81
Desconectado
Mensajes: 222
|
Mira este codigo a ver si te sirve void cifrar(char cadena[],int clave,int size){ int i; for(i=0;i<size;i++){ cadena[i]=(char)((int)cadena[i]+clave); } } void descifrar(char cadena[],int clave,int size){ int i; for(i=0;i<size;i++){ cadena[i]=(char)((int)cadena[i]-clave); } } int main() { char cadena[]="hola mundo"; cifrar(cadena,13,size); printf("cadena cifrada: %s",cadena ); descifrar(cadena,13,size); printf("\ncadena descifrada: %s",cadena ); return 0; }
|
|
|
En línea
|
Si C/C++ es el padre de los lenguajes entonces ASM es dios.
|
|
|
engel lex
|
La función cifrar retorna un valor, sin embargo en la linea 19 no se lo asignas a nadie
crack81 tu codigo veo que tiene un error, si colocas letras minúsculas, te colocará caracteres problematicos o no imprimibles
|
|
« Última modificación: 19 Julio 2015, 21:57 pm por engel lex »
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
Recordad que si la letra + la clave acaba mayor que 'z' o de 'Z', hay que restarle. void cesar(char* str, int key){ for(; *str; str++) if(*str>='a' && *str<='z') *str = (*str+key-'a')%('z'-'a'+1)+'a'; else if(*str>='A' && *str<='Z'){ *str = (*str+key-'A')%('Z'-'A'+1)+'A'; } } void decryptCesar(char* str, int key){ cesar(str, 'z'-'a'-key+1); }
|
|
« Última modificación: 19 Julio 2015, 22:11 pm por ivancea96 »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Cifrado César en Python
Scripting
|
.:WindHack:.
|
3
|
7,932
|
7 Junio 2010, 02:10 am
por Novlucker
|
|
|
Qué preferis: Cifrado cesar o Ensalada cesar?
Foro Libre
|
Castg!
|
6
|
5,292
|
1 Agosto 2011, 22:45 pm
por scr21
|
|
|
[+] mCesar - Cifrado Cesar
Programación Visual Basic
|
|SMT|
|
1
|
2,434
|
8 Septiembre 2013, 16:09 pm
por noele1995
|
|
|
cifrado cesar en c
Programación C/C++
|
kikian94
|
6
|
11,336
|
29 Octubre 2013, 15:01 pm
por kikian94
|
|
|
trabajo de codificacion segun cifrado cesar y juego de ahorca
Programación C/C++
|
RobVanper
|
4
|
2,189
|
23 Septiembre 2016, 05:08 am
por engel lex
|
|