CafeM0ca

[C]시저암호(카이사르암호) 본문

Programming/C

[C]시저암호(카이사르암호)

M0ca 2017. 11. 19. 20:09
반응형

흔히 아는 카이사르 암호인데 +3이아니라 -3으로 짰다.

a면 x, A면 X로 대응한다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include<stdio.h>
#include<ctype.h>
 
#define END_ALF 26
int main()
{
    unsigned char str[200];
    fgets(str, 200, stdin);
    for (int i = 0; str[i]!='\n'; i++) {
        if (str[i] == ' ')
            printf(" ");
        else if (islower(str[i])) { //소문자인지 판단
            if (str[i] - 3 < 'a')   
                printf("%c", str[i] + END_ALF - 3);  
            else
                printf("%c", str[i] - 3);
        }
        else if (isupper(str[i])) {  //대문자인지 판단
            if (str[i] - 3 < 'A')
                printf("%c", str[i] + END_ALF - 3);
            else
                printf("%c", str[i] - 3);
        }
        else {
            printf("error\n");
            break;
        }
    }
    return 0;
}
cs


반응형

'Programming > C' 카테고리의 다른 글

[C]별찍기  (0) 2018.01.12
[C]const 포인터  (0) 2017.11.28
[C] fwrite,fread  (0) 2017.11.08
[C]union,enum  (0) 2017.11.08
[C]비트 필드  (0) 2017.11.07
Comments