Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
ライブエディター
空白の変更を非表示
未変更行を折りたたむ
折り返しなし
レイアウト
分割
統合
比較精度
スマート
単語
文字
テキストスタイル
外観を変更
シンタックスハイライト
構文を選択
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
Untitled diff
作成日
10 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
16 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
93 行
すべてコピー
14 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
92 行
すべてコピー
#include <stdio.h>
#include <stdio.h>
#include <cs50.h>
#include <cs50.h>
#include <string.h>
#include <string.h>
#include <ctype.h>
#include <ctype.h>
#include <math.h>
#include <math.h>
void EncryptLower(int key, char i);
void EncryptLower(int key, char i);
void EncryptUpper(int key, char i);
void EncryptUpper(int key, char i);
int WhichArray(char* keyword, int CharNum);
int WhichArray(char* keyword, int CharNum);
int main(int argc, string argv[])
int main(int argc, string argv[])
{
{
if (argc != 2)
if (argc != 2)
{
{
printf("Please enter one key after ./vigenere\n.");
printf("Please enter one key after ./vigenere\n.");
return 1; // Make sure that 2 arguments are passed into the program else exit and return 1 as error message
return 1; // Make sure that 2 arguments are passed into the program else exit and return 1 as error message
}
}
コピー
コピー済み
コピー
コピー済み
char* keyword = argv[1]; // Assign the key into a variable
//
char* keyword = argv[1]; // Assign the key into a variable
//if (isalpha(keyword) != true) // Check that the key is all letters
//if (isalpha(keyword) != true) // Check that the key is all letters
//{
//{
// return 1; // Exit program
// return 1; // Exit program
//}
//}
コピー
コピー済み
コピー
コピー済み
char*
message = GetString(); // Store the message
string
message = GetString(); // Store the message
コピー
コピー済み
コピー
コピー済み
int z = strlen(message);
//
int z = strlen(message);
//
int shift[
z
];
int shift[
strlen(argv[1])
];
コピー
コピー済み
コピー
コピー済み
for(int a = 0, n = strlen(
keyword
); a < n; a++) //Go through the characters of the key and create an array of keys to use
for(int a = 0, n = strlen(
argv[1]
); a < n; a++) //Go through the characters of the key and create an array of keys to use
{
{
コピー
コピー済み
コピー
コピー済み
if(isupper(
keyword
[a]))
if(isupper(
argv[1]
[a]))
{
{
コピー
コピー済み
コピー
コピー済み
int
shift[
n
] =
keyword
[a] - 65; // populate the array with an index to encrypt with
shift[
a
] =
argv[1]
[a] - 65; // populate the array with an index to encrypt with
}
}
コピー
コピー済み
コピー
コピー済み
else if(islower(
argv[1]
[a]))
else if(islower(
keyword
[a]))
{
{
コピー
コピー済み
コピー
コピー済み
int
shift[
n
] =
keyword
[a] - 97; // populate the array with an index to encrypt with
shift[
a
] =
argv[1]
[a] - 97; // populate the array with an index to encrypt with
}
}
}
}
for(int i = 0, x = strlen(message); i < x; i++) // for first to last character
for(int i = 0, x = strlen(message); i < x; i++) // for first to last character
{
{
if(isalpha(message[i])) // Check if the value is a character
if(isalpha(message[i])) // Check if the value is a character
{
{
if(islower(message[i])) // check if the value is lowercase
if(islower(message[i])) // check if the value is lowercase
{
{
コピー
コピー済み
コピー
コピー済み
int key0 = shift [WhichArray(
keyword
, i)]; // which array will find which number of array to pull this should work.
int key0 = shift [WhichArray(
argv[1]
, i)]; // which array will find which number of array to pull this should work.
EncryptLower(key0, message[i]);
EncryptLower(key0, message[i]);
}
}
else if(isupper(message[i])) //check if the the value is uppercase
else if(isupper(message[i])) //check if the the value is uppercase
{
{
コピー
コピー済み
コピー
コピー済み
int key1 = shift [WhichArray(
keyword
, i)];
int key1 = shift [WhichArray(
argv[1]
, i)];
EncryptUpper(key1, message[i]);
EncryptUpper(key1, message[i]);
}
}
}
}
else
else
{
{
printf("%c", message[i]); // Not sure if this will work, print any charcter not encrypted eg. a number or brackets
printf("%c", message[i]); // Not sure if this will work, print any charcter not encrypted eg. a number or brackets
}
}
}
}
printf("\n");
printf("\n");
return 0;
return 0;
}
}
void EncryptLower(int key, char i) // Encrypt Lowercase letters
void EncryptLower(int key, char i) // Encrypt Lowercase letters
{
{
int cipher = ((i + key - 97) % 26) + 97; //encrypt the char
int cipher = ((i + key - 97) % 26) + 97; //encrypt the char
printf("%c", cipher); // print the encrypted char
printf("%c", cipher); // print the encrypted char
}
}
void EncryptUpper(int key, char i) // Encrypt the uppercase letters
void EncryptUpper(int key, char i) // Encrypt the uppercase letters
{
{
int cipher = ((i + key - 65) % 26) + 65; // encrypt the char
int cipher = ((i + key - 65) % 26) + 65; // encrypt the char
printf("%c", cipher); // print the encrypted char
printf("%c", cipher); // print the encrypted char
}
}
int WhichArray(char* keyword, int CharNum) // Find out which array to go into, CharNum is the character number in the string
int WhichArray(char* keyword, int CharNum) // Find out which array to go into, CharNum is the character number in the string
{
{
int x = CharNum % strlen(keyword);
int x = CharNum % strlen(keyword);
return x;
return x;
}
}
保存された差分
原文
ファイルを開く
#include <stdio.h> #include <cs50.h> #include <string.h> #include <ctype.h> #include <math.h> void EncryptLower(int key, char i); void EncryptUpper(int key, char i); int WhichArray(char* keyword, int CharNum); int main(int argc, string argv[]) { if (argc != 2) { printf("Please enter one key after ./vigenere\n."); return 1; // Make sure that 2 arguments are passed into the program else exit and return 1 as error message } char* keyword = argv[1]; // Assign the key into a variable //if (isalpha(keyword) != true) // Check that the key is all letters //{ // return 1; // Exit program //} char* message = GetString(); // Store the message int z = strlen(message); //int shift[z]; for(int a = 0, n = strlen(keyword); a < n; a++) //Go through the characters of the key and create an array of keys to use { if(isupper(keyword[a])) { int shift[n] = keyword[a] - 65; // populate the array with an index to encrypt with } else if(islower(keyword[a])) { int shift[n] = keyword[a] - 97; // populate the array with an index to encrypt with } } for(int i = 0, x = strlen(message); i < x; i++) // for first to last character { if(isalpha(message[i])) // Check if the value is a character { if(islower(message[i])) // check if the value is lowercase { int key0 = shift [WhichArray(keyword, i)]; // which array will find which number of array to pull this should work. EncryptLower(key0, message[i]); } else if(isupper(message[i])) //check if the the value is uppercase { int key1 = shift [WhichArray(keyword, i)]; EncryptUpper(key1, message[i]); } } else { printf("%c", message[i]); // Not sure if this will work, print any charcter not encrypted eg. a number or brackets } } printf("\n"); return 0; } void EncryptLower(int key, char i) // Encrypt Lowercase letters { int cipher = ((i + key - 97) % 26) + 97; //encrypt the char printf("%c", cipher); // print the encrypted char } void EncryptUpper(int key, char i) // Encrypt the uppercase letters { int cipher = ((i + key - 65) % 26) + 65; // encrypt the char printf("%c", cipher); // print the encrypted char } int WhichArray(char* keyword, int CharNum) // Find out which array to go into, CharNum is the character number in the string { int x = CharNum % strlen(keyword); return x; }
変更されたテキスト
ファイルを開く
#include <stdio.h> #include <cs50.h> #include <string.h> #include <ctype.h> #include <math.h> void EncryptLower(int key, char i); void EncryptUpper(int key, char i); int WhichArray(char* keyword, int CharNum); int main(int argc, string argv[]) { if (argc != 2) { printf("Please enter one key after ./vigenere\n."); return 1; // Make sure that 2 arguments are passed into the program else exit and return 1 as error message } //char* keyword = argv[1]; // Assign the key into a variable //if (isalpha(keyword) != true) // Check that the key is all letters //{ // return 1; // Exit program //} string message = GetString(); // Store the message //int z = strlen(message); int shift[strlen(argv[1])]; for(int a = 0, n = strlen(argv[1]); a < n; a++) //Go through the characters of the key and create an array of keys to use { if(isupper(argv[1][a])) { shift[a] = argv[1][a] - 65; // populate the array with an index to encrypt with } else if(islower(argv[1][a])) { shift[a] = argv[1][a] - 97; // populate the array with an index to encrypt with } } for(int i = 0, x = strlen(message); i < x; i++) // for first to last character { if(isalpha(message[i])) // Check if the value is a character { if(islower(message[i])) // check if the value is lowercase { int key0 = shift [WhichArray(argv[1], i)]; // which array will find which number of array to pull this should work. EncryptLower(key0, message[i]); } else if(isupper(message[i])) //check if the the value is uppercase { int key1 = shift [WhichArray(argv[1], i)]; EncryptUpper(key1, message[i]); } } else { printf("%c", message[i]); // Not sure if this will work, print any charcter not encrypted eg. a number or brackets } } printf("\n"); return 0; } void EncryptLower(int key, char i) // Encrypt Lowercase letters { int cipher = ((i + key - 97) % 26) + 97; //encrypt the char printf("%c", cipher); // print the encrypted char } void EncryptUpper(int key, char i) // Encrypt the uppercase letters { int cipher = ((i + key - 65) % 26) + 65; // encrypt the char printf("%c", cipher); // print the encrypted char } int WhichArray(char* keyword, int CharNum) // Find out which array to go into, CharNum is the character number in the string { int x = CharNum % strlen(keyword); return x; }
違いを見つける