C言語で書かれたシーザー暗号を造るプログラムを改良してみた
/* 「.」や「,」や「!」や「?」や空白なども入れて暗号文を作る様にしてみようとしたが駄目だった。*/
#include <stdio.h>
#define LEN 255
int main(void)
{
char string[LEN];
char ango[LEN];
int key, n, i;
printf("平文を入力(英大小文字のみ):");
scanf("%s", string);
printf("鍵を入力:");
scanf("%d", &key);
i = 0;
while (string[i] != 0) {
if (('a'<=string[i])&&(string[i]<='z')) {
n = (string[i] - 'a' + key + 26) % 26;
ango[i] = 'a' + n;
}
else if (('A'<=string[i])&&(string[i]<='Z')) {
n = (string[i] - 'A' + key + 26) % 26;
ango[i] = 'A' + n;
}
else {
printf("文字が違います");
}
i++;
}
ango[i] = 0;
printf("暗号文:%s\n", ango);
return 0;
}
/* 空白などを入れるための方法が判らない・・・色々やってみたがセグメンテーションエラーになったりして上手くいかなかった・・・ */

にほんブログ村
| 固定リンク
「パソコン・インターネット」カテゴリの記事
- Windows10パソコンにLinuxマルチブート導入の利点(2017.11.04)
- ビビリながらUEFIパソコンをマルチブートに(2016.01.04)
- 新しいパソコンを買いました(2016.01.04)
- acer Aspire one 751hのHDDを換装(2013.10.29)
- インターネットカフェからこんにちは(2012.11.16)
コメント