>> ROB : 안녕, 난 롭 해요, 그리고의 해독하자 Vigenere 프로그램.
우리가해야 할 그래서 먼저 확인합니다 확인 사용자는 우리가 기대했던 입력
그 명령 라인에.
ARGC 2없는 경우 그래서 그 중 하나가 의미 사용자가 문자열 우리를 입력하지 않았습니다
우리의 암호화로 사용되도록하려면 문자열, 또는 그들이
너무 많은 일을 입력.
그리고 우리는 무엇을 해야할지 모르겠어요 그 다른 것들과.
>> 그래서 우리는 그들에게 그들이 입력해야합니다.
그리고 우리는 돌아갑니다.
지금, 우리가 할 수있는, ARGC 2라고 가정 프로그램의 나머지 부분을 계속합니다.
>> 우리는 [1] ARGV의 이름을 별칭
변수 키워드에.
우리가 할 필요가 없도록 [1] 이름 ARGV를 사용
프로그램의 나머지.
그리고 어쩌면 우리는 잊을거야 무엇 그 등을 의미합니다.
키워드는 훨씬 더 멋진 이름입니다.
그리고 우리는 바로 길이를 갖다 줄게 바로 여기에 우리의 키워드.
>> OK, 이제 우리는 그것을 확인하려면 우리의 키워드는 실제로 유효합니다.
우리는 문자열을 암호화하는 데 사용하는 키워드 그냥 알파벳해야
문자.
사용자는 알파벳 이외의 입력 한 경우 자, 우리가 말을해야, 키워드
단을 통해이 포함되어야합니다 다음 Z 및 반환.
따라서이 루프 반복을위한 이상 모든 우리의 키워드 문자 확인
하나는 알파벳 다음 수없는 경우 우리는 그 경고를 인쇄해야합니다.
>> 우리는이 점에 도착하면 지금, 우리는 알고있다 문자열이 정확해야합니다.
키워드는 정확해야합니다.
그리고 지금 우리의 메시지를 얻을 필요 그들은 우리를 원하는 사용자
그 중요한 어구와 함께 암호화합니다.
그래서 메시지를 얻기 위해, 우리는이 하는 동안에 무슨 루프
연속적 사용자로부터 문자열을 얻을 그들은 올바른 문자열을 입력 할 때까지.
>> 계속해서, 우리는 여기에서이 변수를 참조 INT nun_letters_seen.
우리가 필요로하는 이유를 우리는 볼 수 있습니다 두 번째에 해당.
그러나 루프이 반복하는 것입니다 나는 최대 0 모든 방법을 동일에서
우리가 반복하고 의미하는 N과 동일 가능한 모든 이상
우리의 메시지의 문자.
우리는 모두 암호화 할 때문에 우리의 메시지에있는 문자.
그래서, 우리는 (isalphamessage [I] 경우 어떻게 알 수 우리는 암호화하지 않기 때문에
알파벳없는 문자.
기호가있는 경우에, 공백 나 숫자, 우리는하지 않습니다
사람들을 암호화 할.
>> 지금,이 알파벳이라고 가정 우리는 먼저 파악하려는 우리
실제로 암호화하려면 사용하여 메시지.
그래서 나는 그 무엇을 의미합니까?
>> 의 가정하자 그 중요한 어구 입력 한 사용자는 ABC했다.
그것은 우리가 암호화하는 사용하는거야.
이제, 순진, 우리는 그 의미 생각 우리는 첫 번째 문자를 암호화하려면
0에 의해 우리의 메시지, 이후 수단 0으로 문자를 회전.
>> 우리는 두 번째 문자를 암호화하려면 1로, 2로 세 번째 문자,
0으로 네 번째 문자, 다섯 번째 1로, 등등 2로 여섯 번째합니다.
그러나 우리는 건너 뛸 것을 기억 공백 및 기호 및 숫자.
즉, 사용자가 입력했다면 메시지와 안녕하세요!
그런 다음, 암호화 할 것을 우리는 0으로 시간을 암호화하려면
, (1)에 의해, E에 대응하는 L 2로, 0에 의한 L, 1에 의한 오.
우리는 암호화 된 공간을 건너 뛸 이 순서 w, 0, 1, 2, 0에 의해 O.
우리는 생략하지 않은 경우에, 통지 공간, 우리는 암호화 된 것
0으로 W와 함께 종료 잘못된 문자열입니다.
>> OK, 이것은 우리가 변수를 필요로하는 무슨이다 대한 num_letters_seen.
우리는 단지 사용하여 암호화 생길까 이동하지 않는이 방법
기호, 공간, 숫자, 우리 다만 나는 무엇으로 변수를 사용할 수 있습니다
우리의 주요 구문에 인덱스.
우리는 계속 num_letters_seen를 사용할 필요가 의 실제 위치를 추적
우리는 인덱싱 할 중요한 어구.
그래서 여기에, 키워드는 우리가 가지고있는 경우에, 경우 num_letter_seen 모드 keyword_length, 그래서
왜 우리는 모드 (mod)해야합니까 키워드 길이로?
>> 음, 안녕하세요 좋은 예였다.
키워드 ABC했다 경우에, 우리는 필요 계속 B를 다음으로 암호화하는
다음 C, 다음, 주위에 다시 포장 A, B, C, A, B, C,.
그래서 우리는 키워드 길이 모드 (mod) 할 필요가 주위에 다시 포장하기 위하여.
>> 그래서,이 대문자 인 경우 우리는에 의해 암호화하려면
알파벳에서 해당 문자의 위치, 우리는 단지에 의해 얻을 수있는
자본 A.을 뺀 마찬가지로 소문자의 경우, 우리
우리가 원하는 키를 얻을 수 있습니다 소문자를 빼서.
그래서되는지의 여부에 관계없이 문자 중요한 어구의 수도였다 또는
소문자, 우리는 갈거야 같은 양으로 암호화합니다.
>> 이제 우리는 우리의 키를 가지고, 우리는 여기에서 참조 그 메시지 경우에 나는 대문자
문자는, 우리는 계산할 그 알파벳 위치
자, 여기에 우리의 키를 추가, 다시 포장 주위에 그 그래서 우리는 지나친 경우
Z 우리는 그렇게 다시 A, B, C로 이동합니다.
그리고, 마지막으로, 자본 A.에 다시 추가 그래서 우리는 [로 다시 이동? 아스키?]
이러한 문자의 범위 대신 알파벳 숫자 위치
이러한 문자.
>> 그리고 우리를 위해 같은 일을 소문자.
우리는 소문자를 뺄 경우를 제외하고 과에 다시 추가
끝, 소문자.
그 num_letter_seen이 아니라주의 증가하면이었다 메시지
알파벳.
이것은 우리가 공백, 기호를 이동하는 방법이며, 우리의 중요한 어구, 이후의 숫자
num_letter_seen 우리가 사용하는 것입니다 우리의 키워드로 인덱스.
>> 마지막으로, 결국, 지금 메시지 나는, 암호화 된 우리
내가 메시지를 인쇄 할 수 있습니다.
그리고 바로 그거야.
내 이름은 롭입니다.
그리고 이것은 Vigenere입니다.
>> [음악 연주]