Una empresa debe transmitir datos mediante el teléfono, pero esta preocupados de que sus teléfonos pudieran estar intervenidos. Todos sus datos se transmiten como enteros de 4 dígitos. Le han solicitado a usted que escriba un programa que cifre sus datos, de tal forma que puedan ser transmitidos con mayor seguridad. Su programa deberá leer un entero de 4 dígitos y cifrarlo como sigue, remplazar cada dígito por (la suma del dígito mas 7) modulo 10. A continuación intercambiar el primer dígito con el tercero y el segundo con el cuarto. A continuación imprimir el entero cifrado. Escriba un entero por separado, que introduzca un numero entero cifrado, y lo decifre para formar el numero original.
========================================================================
# include
main ()
{
int n, d1, d2, d3, d4;
printf("Dame un numero entero de 4 digitos");
scanf("%d",& n);
if (n<=9999){
d1 = n%10;
n = n/10;
d2 = n%10;
n = n/10;
d3 = n%10;
n = n/10;
d4 = n;
d1 = ((d1+7)%10) * 100;
d2 = ((d2+7)%10) * 1000;
d3 = ((d3+7)%10) * 1;
d4 = ((d4+7)%10) * 10;
printf("El numero cifrado es %d", d1 + d2 + d3 + d4);
}
else {
printf("No es un numero de cuatro digitos");
}
getch();
return 0;
}
==================================================================
//programa que lee un numero y lo decifra
# include
main ()
{
int n, d1, d2, d3, d4;
printf("\nDame un numero cifrado de 4 digitos\n");
scanf("%d",& n);
if (n<=9999){
d1 = n%10;
n = n/10;
d2 = n%10;
n = n/10;
d3 = n%10;
n = n/10;
d4 = n;
d1 = (d1+3) * 100;
d2 = (d2+3) * 1000;
d3 = (d3+3) * 1;
d4 = (d4+3) * 10;
printf("El numero decifrado es \t%d", d1 + d2 + d3 + d4);
}
else {
printf("No es un numero de cuatro digitos");
}
getch();
return 0;
}