/* 13.Написать программу, которая шифрует и дешифрует сообщение Шифром Цезаря. */ #include #include #define OFFSET 13 char* encrypt(char* string) { char *result = string; for (int i =0; i < strlen(string);i++) { char c = string[i]; if (c >= 'A' && c <= 'Z') { c = c + (OFFSET % 26); if (c > 'Z') c = 'A' + (c - 'Z') - 1; } if (c >= 'a' && c <= 'z') { c = c + (OFFSET % 26); if (c > 'z') c= 'a' + (c - 'z') - 1; } result[i] = c; } return result; } char* decrypt(char* string) { char *result = string; for (int i =0; i < strlen(string);i++) { char c = string[i]; if (c >= 'A' && c <= 'Z') { c = c - (OFFSET % 26); if (c < 'A') c = 'Z' - ('A' - c) + 1; } if (c >= 'a' && c <= 'z') { c = c - (OFFSET % 26); if (c < 'a') c= 'z' - ('a' - c) + 1; } result[i] = c; } return result; } int main() { char string[32]; scanf("%s", string); char *enc = encrypt(string); printf("%s\n", enc); printf("%s", decrypt(enc)); return 0; }