暗号文のプログラム
Posted: 2007年11月13日(火) 09:24
忙しい中失礼します。プログラムに関する質問です。
現在C言語で暗号文のプログラムを作成しています。プログラムの過程は以下の通りです。
1.ユーザーに 1暗号化/2標準化/3中止(何もしない)を選択させる
2.ABC(標準文)→DEF(暗号文)に変換[3文字ずらす] 最大入力80文字
3.DEF(暗号文)→ABC(標準文)に変換[3文字戻す] 最大入力80文字
というようにプログラムを組むものです。
で、質問です。
質問. どうすれば、1.文の中で1(暗号化)を選択した後、2.の処理を行ってもらえるのでしょうか?
補足質問. 2.と3.において、どうすれば最大入力80文字を設定することが出来るのでしょうか?
アドバイス等あれば回答願います。
※
1.文のプログラム printf("You select encrypt.\n"); 部分に作成した2.文(下記文参照)を入れても、2.の処理を行ってもらえません。
ソフト使用環境:Borland C ?? (多分最新版です。C、C++使用可)
パソコン環境:Windows XP
1.文のプログラム
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num1;
printf("What do you want? Select the number\n");
printf(" 1.encrypt(暗号化) Cange decryption letters into encryption letters\n");
printf(" 2.decrypt(標準化) Cange encryption letters into decryption letters\n");
printf(" 3.quit You don't need to write letters.\n");
printf("Enter the number: ");
scanf("%d", &num1);
if(num1 == 1)
{
printf("You select encrypt.\n"); ←ココに2.文のプログラムを入れようとしています。
}
else if(num1 == 2)
{
printf("You select decrypt.\n");
}
else
{
printf("You don't do anything.\n");
}
system("PAUSE");
return 0;
}
2.文のプログラム
int main(void)
{
char *upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int c, i;
while((c = getchar()) != '\n'){
for(i = 0; upper; i++)
{
if(c == upper)
{
c = upper[(i + 3) % 26];
break;
}
}
putchar(c);
}
system("pause");
return 0;
}
現在C言語で暗号文のプログラムを作成しています。プログラムの過程は以下の通りです。
1.ユーザーに 1暗号化/2標準化/3中止(何もしない)を選択させる
2.ABC(標準文)→DEF(暗号文)に変換[3文字ずらす] 最大入力80文字
3.DEF(暗号文)→ABC(標準文)に変換[3文字戻す] 最大入力80文字
というようにプログラムを組むものです。
で、質問です。
質問. どうすれば、1.文の中で1(暗号化)を選択した後、2.の処理を行ってもらえるのでしょうか?
補足質問. 2.と3.において、どうすれば最大入力80文字を設定することが出来るのでしょうか?
アドバイス等あれば回答願います。
※
1.文のプログラム printf("You select encrypt.\n"); 部分に作成した2.文(下記文参照)を入れても、2.の処理を行ってもらえません。
ソフト使用環境:Borland C ?? (多分最新版です。C、C++使用可)
パソコン環境:Windows XP
1.文のプログラム
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num1;
printf("What do you want? Select the number\n");
printf(" 1.encrypt(暗号化) Cange decryption letters into encryption letters\n");
printf(" 2.decrypt(標準化) Cange encryption letters into decryption letters\n");
printf(" 3.quit You don't need to write letters.\n");
printf("Enter the number: ");
scanf("%d", &num1);
if(num1 == 1)
{
printf("You select encrypt.\n"); ←ココに2.文のプログラムを入れようとしています。
}
else if(num1 == 2)
{
printf("You select decrypt.\n");
}
else
{
printf("You don't do anything.\n");
}
system("PAUSE");
return 0;
}
2.文のプログラム
int main(void)
{
char *upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int c, i;
while((c = getchar()) != '\n'){
for(i = 0; upper; i++)
{
if(c == upper)
{
c = upper[(i + 3) % 26];
break;
}
}
putchar(c);
}
system("pause");
return 0;
}