ayuda
Publicado por Máximo (1 intervención) el 03/06/2022 20:58:33
Un determinado algoritmo de encriptación, se emplea una operación denominada change, que consiste en sustituir un caracter por otro de manera calculada. Teniendo en cuenta su posición en la tabla ASCII, la operación change aplica un desplazamiento o gap (generalmente una posición, pero puede ser más) y después ofrecer el caracter que se encuentra a una determinada distancia (por ejemplo, a una distancia de 3 caracteres después del gap). Por ejemplo, para el caso del caracter 'A', con un gap de una posición y una distancia de 3 posiciones, el caracter a ofrecer sería 'E' (nos 'saltamos' el caracter 'B' por el gap y contamos tres, 'C', 'D' y 'E', que es realmente el caracter para el change).
Se pide diseñar dos funciones, change_iter() como solución iterativa al problema, y otra función gemela change_rec() como solución recursiva del mismo.
NOTA IMPORTANTE: no se pueden emplear conocimientos de los temas de arrays o cadenas en este ejercicio.
Ejemplos de uso:
int main() {
printf("Valor de change para el caracter %c es %c\n", 'A', change_iter(/*TODO*/)); //change para 'A' con gap 1 y distancia 3 es 'E'
printf("Valor de change para el caracter %c es %c\n", 'A', change_rec(/*TODO*/)); //change para 'A' con gap 1 y distancia 3 es 'E'
printf("Valor de change para el caracter %c es %c\n", 'N', change_iter(/*TODO*/)); //change para 'N' con gap 2 y distancia 4 es 'T'
printf("Valor de change para el caracter %c es %c\n", 'N', change_rec(/*TODO*/)); //change para 'N' con gap 2 y distancia 4 es 'T'
return 0;
}
Se pide diseñar dos funciones, change_iter() como solución iterativa al problema, y otra función gemela change_rec() como solución recursiva del mismo.
NOTA IMPORTANTE: no se pueden emplear conocimientos de los temas de arrays o cadenas en este ejercicio.
Ejemplos de uso:
int main() {
printf("Valor de change para el caracter %c es %c\n", 'A', change_iter(/*TODO*/)); //change para 'A' con gap 1 y distancia 3 es 'E'
printf("Valor de change para el caracter %c es %c\n", 'A', change_rec(/*TODO*/)); //change para 'A' con gap 1 y distancia 3 es 'E'
printf("Valor de change para el caracter %c es %c\n", 'N', change_iter(/*TODO*/)); //change para 'N' con gap 2 y distancia 4 es 'T'
printf("Valor de change para el caracter %c es %c\n", 'N', change_rec(/*TODO*/)); //change para 'N' con gap 2 y distancia 4 es 'T'
return 0;
}
Valora esta pregunta


0