>> ROB：こんにちは、私はロブだし、のは解読しましょう ヴィジュネルプログラム。
我々がする必要があるので、まず最初にすることです。 ユーザーは我々が期待したものを入力してください
コマンドラインで、それら。
ARGCが2でないのであれば、それはどちらかを意味し 利用者は、文字列、我々が入力されていません
私たちの暗号として使用されるようにする 文字列、またはそれら
あまりにも多くのことを入った。
そして、我々は何をすべきか分からない これらの他のものと。
>> だから我々は彼らは何を伝え 入力されている必要があります。
そして、我々は戻って。
今、我々はできる、ARGCが2だったと仮定して プログラムの残りの部分を続行します。
>> 私たちは、[1] ARGVの名前に別名
変数のキーワードに。
我々はする必要がないように [1]名ARGVを使う
プログラムの残りの部分全体。
そして多分私達は何を忘れる つまり、というように意味や。
キーワードは非常に良く名前です。
そして、我々はすぐに、長さをつかむだろう 右ここに私たちのキーワード。
>> [OK]を、だから今我々はそれを確認したい 私たちのキーワードは、実際に有効である。
我々は、文字列の暗号化に使用するキーワード ただ、アルファベットでなければなりません
文字。
ユーザーは、アルファベット以外を入力した場合 文字、私たちが言うべき、キーワード
のみを通じて含まれている必要があります それから、Zとリターン。
したがって、このループが繰り返さための上のすべての 私たちのキーワードの文字、チェック
その1はアルファベット、その後でない場合 我々は、警告を表示する必要があります。
>> 我々はこの点に得れば、今、我々は知っている つまり、文字列が正しくなければなりません。
キーワードが正しくなければなりません。
そして今、我々はからメッセージを取得する必要があります 彼らは私たちがしたいことをユーザー
そのキーフレーズで暗号化します。
だから、そのメッセージを取得するために、我々は持っている やるしばらくになるだろうループ
継続的に、ユーザから文字列を取得 彼らは有効な文字列を入力するまで。
>> 続いて、我々はここに、この変数を参照してください。 INT nun_letters_seen。
我々が必要とするなぜ我々が表示されます 第二のもの。
しかし、forループは、これは反復処理しようとしている 私は、最大0ずっと等しいから
我々は繰り返し処理していることを意味し、Nに等しく すべての可能なオーバー
私たちのメッセージ内の文字。
我々はすべてを暗号化するので、 私たちのメッセージ内の文字。
だから、我々は（isalphamessage [I]場合の対処に気づく 私たちは、暗号化しないので、
アルファベット順でない文字。
シンボルがある場合には、スペース、 や数字、​​我々はしないでください
それらを暗号化したい。
>> 今、それはアルファベット順であると仮定 まず私たちを把握したい
実際に暗号化したい 使用してメッセージ。
だから私はそれとはどういう意味ですか？
>> それでは、そのキーフレーズを仮定しましょう 入力したユーザーは、ABCた。
それは我々が暗号化に使用しているものです。
今、単純に、我々はそれが意味だと思う 我々は最初の文字を暗号化したい
0による私たちのメッセージを、以降の手段 0で文字を回転させること。
>> 私たちは番目の文字を暗号化したい 1によって、2番目の文字によって、
0による四文字、五 1によって、というように2による第六、および。
しかし、我々はスキップしたいことを、覚えている スペースや記号と数字。
これは、ユーザが入力した場合を意味する メッセージとしてハローワールド
そして、彼らは、暗号化すること 我々は0で、Hを暗号化したい
、1でA、Eに対応する L 2で、0によるL、1によるO。
我々は、暗号化され、スペースをスキップする 2によるwは、0、1、2、0重量O。
我々はスキップされていなかったのであれば、注意してください スペースは、その後、我々は暗号化されたであろう
0によるWとなってしまった 間違った文字列。
>> [OK]を、これは我々が変数を必要とするものである 用num_letters_seen。
我々だけで使用して暗号化するために行っていた場合 スキップしないこの方法、
記号、スペース、数字、我々 ちょうど私は何として変数を使用することができます
と私たちのキーフレーズをインデックスする。
我々は維持しnum_letters_seenを使用する必要があります の実際の場所を追跡
我々は、インデックスを作成するキーフレーズ。
だからここに、我々が持っているキーワードの場合、もし num_letter_seen MOD keyword_lengthので、
なぜ我々はMODに必要なのですか キーワード長さ？
>> さて、Hello Worldのが良い例だった。
キーワードはABCれた場合、我々は必要とする 継続し、その後Bで暗号化する
それからC、そして、周りのバックラップ のa、b、cであり、a、b、c。
だから我々は、キーワードの長さで国防省する必要があります 周りのバックラップするためである。
>> もしそうなら、これは大文字で、 その後、我々はで暗号化する
アルファベットのその文字の位置、 私達はちょうどで取得した
資本A.を差し引き、 同様に、小文字のため、我々
我々はでするキーを取得することができます 小文字のaを減算する。
だからかどうかに関係なく手紙 キーフレーズに首都であったか、
小文字、我々はするつもりだ 同額暗号化します。
>> 今、私たちは鍵を持っていることを、私たちはここを参照してください、 そのメッセージなら、私は大文字
キャラクターは、その後、我々は計算したい それのアルファベットの位置
キャラクター、それに私たちのキーを追加し、バックラップ 周りのように我々は、過去行けば
Z私たちは、というように戻って、A、B、Cに移動し、。
そして、最後に、そのための資本Aに再度追加 我々は戻って[に移行？ ASCII？]
これらの文字の範囲の代わりに、 アルファベット、数字の位置
これらの文字の。
>> そして、我々は同じことをやる 小文字。
私たちは、小文字を減算したい場合を除き とに背中にそれを追加
最後は、小文字。
num_letter_seenのみであることに注意してください メッセージは私がいた場合にはインクリメント
アルファベット順。
これは、我々は、スペース、記号をスキップする方法であり、 私たちのキーフレーズの中の数字、以来、
num_letter_seenは、我々が使用しているものです。 私たちのキーワードをインデックスする。
>> 最後に、最終的には、現在、そのメッセージ 私は、暗号化されている私たち
私はメッセージを出力します。
そして、それはこれだけです。
私の名前はロブです。
そして、これはヴィジュネルです。
>> [音楽再生]