= 'a' && str[i] <= 'z') { str[i] = (str[i] - 'a' + 13) % 26 + 'a'; } else if (str[i] >= 'A' && str[i] <= 'Z') { str[i] = (str[i] - 'A' + 13) % 26 + 'A'; } } printf("\t\t변환결과 : "); puts(str); return 0; } void railfence(){ system("cls"); printf("\t\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\n"); printf("\t\t\t\t\t\trailfence \n\n"); printf("\t\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\n\n"); int i, j, length, column, cnt, arr[100][1000]; char str[1000]; printf("\t\t문장을 입력하세요 : "); sca"> = 'a' && str[i] <= 'z') { str[i] = (str[i] - 'a' + 13) % 26 + 'a'; } else if (str[i] >= 'A' && str[i] <= 'Z') { str[i] = (str[i] - 'A' + 13) % 26 + 'A'; } } printf("\t\t변환결과 : "); puts(str); return 0; } void railfence(){ system("cls"); printf("\t\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\n"); printf("\t\t\t\t\t\trailfence \n\n"); printf("\t\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\n\n"); int i, j, length, column, cnt, arr[100][1000]; char str[1000]; printf("\t\t문장을 입력하세요 : "); sca"> = 'a' && str[i] <= 'z') { str[i] = (str[i] - 'a' + 13) % 26 + 'a'; } else if (str[i] >= 'A' && str[i] <= 'Z') { str[i] = (str[i] - 'A' + 13) % 26 + 'A'; } } printf("\t\t변환결과 : "); puts(str); return 0; } void railfence(){ system("cls"); printf("\t\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\n"); printf("\t\t\t\t\t\trailfence \n\n"); printf("\t\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\n\n\n"); int i, j, length, column, cnt, arr[100][1000]; char str[1000]; printf("\t\t문장을 입력하세요 : "); sca">
#include <stdio.h>
#include <Windows.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h>
char str[1000];
void rot13();
void railfence();
void asciiencrypt();
void morse();
void rot13(){
system("cls");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n");
printf("\\t\\t\\t\\t\\t\\trot13 \\n\\n");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n\\n");
int i;
char str[1000];
printf("\\t\\t문장을 입력하세요 : ");
scanf("%s",str);
for (i = 0; str[i]; i++) {
if (str[i] >= 'a' && str[i] <= 'z') {
str[i] = (str[i] - 'a' + 13) % 26 + 'a';
}
else if (str[i] >= 'A' && str[i] <= 'Z') {
str[i] = (str[i] - 'A' + 13) % 26 + 'A';
}
}
printf("\\t\\t변환결과 : ");
puts(str);
return 0;
}
void railfence(){
system("cls");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n");
printf("\\t\\t\\t\\t\\t\\trailfence \\n\\n");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n\\n");
int i, j, length, column, cnt, arr[100][1000];
char str[1000];
printf("\\t\\t문장을 입력하세요 : ");
scanf("%s", str);
length = strlen(str);
printf("\\t\\t열 수를 입력하세요 : ");
scanf("%d", &column);
for (i = 0; i<column; i++){
for (j = 0; j<length; j++){
arr[i][j] = 0;
}
}
cnt = 0;
j = 0;
while (j<length){
if (cnt % 2 == 0){
for (i = 0; i<column; i++){
//strcpy(arr[i][j],str[j]);
arr[i][j] = (int)str[j];
j++;
}
}
else{
for (i = column - 2; i>0; i--){
arr[i][j] = (int)str[j];
j++;
}
}
cnt++;
}
for (i = 0; i<column; i++){
for (j = 0; j<length; j++){
if (arr[i][j] != 0)
printf("%c", arr[i][j]);
}
}
printf("\\n");
}
void asciiencrypt(){
system("cls");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n");
printf("\\t\\t\\t\\t\\t\\tascii \\n\\n");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n\\n");
int i;
char str[1000];
printf("\\t\\t문장을 입력하세요 : ");
scanf("%s", str);
i = 0;
printf("\\t\\t아스키 코드로 변환한 결과 : ");
while (str[i] != '\\0'){
printf("%d ", str[i]);
i++;
}
printf("\\n");
}
void morse(){
char *alphabet[] = { ".-","-...","-.-.","-..",".","..-.","--.","....","..",".---",
"-.-",".-..","--","-.","---",".--.","--.-",".-.","...","-","..-",
"...-",".--","-..-","-.--","--.." };
char *number[] = { "-----",".----","..---","...--","....-",".....","-....","--...","---..","----." };
int i;
char str[1000], str1[1000];
system("cls");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n");
printf("\\t\\t\\t\\t\\t\\tmorse \\n\\n");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n\\n");
printf("\\t\\t문장을 입력하세요 : ");
scanf("%s", str);
i = 0;
while (str[i] != '\\0'){
if (str[i] != ' ' && (!isdigit(str[i]))){
printf("%s ", alphabet[toupper(str[i]) - 65]);
}
if (str[i] == ' '){
printf(" ");
}
if (isdigit(str[i]) && str[i] != ' '){
printf("%s ", number[str[i] - 48]);
}
i++;
}
printf("\\n");
}
int main() {
int choose;
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n");
printf("\\t\\t\\t\\t\\t\\tStringCiphers \\n\\n");
printf("\\t\\t■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■\\n\\n\\n");
printf("\\t\\t\\t\\t\\t\\t1. rot13 \\n\\n");
printf("\\t\\t\\t\\t\\t\\t2. railfence \\n\\n");
printf("\\t\\t\\t\\t\\t\\t3. ascii \\n\\n");
printf("\\t\\t\\t\\t\\t\\t4. morse \\n\\n");
printf("\\t\\t\\t\\t\\t\\t암호화 방식을 선택하세요 : ");
scanf("%d", &choose);
switch (choose) {
case 1: rot13(); break;
case 2: railfence(); break;
case 3: asciiencrypt(); break;
case 4: morse(); break;
default: printf("\\t\\t\\t\\t\\t\\t잘못 입력하셨습니다."); break;
}
return 0;
}