ROB BOWDEN: Привіт, я Роб. І коли в Римі, давайте програма як римляни. Так, перше, що нам потрібно зробити, це перевірити щоб переконатися, що користувач дійсно увійшов кількість, що ми хочемо, щоб повернути кожен характер, по крайней командного рядка. Так, ми перевіряємо. Є агдс одно 2? Якщо це не так, це означає, що користувачеві або чи не ввести номер в командного рядка або вони увійшли занадто багато речі в командному рядку, в якій випадок, ми не знаємо, що робити з іншою частиною речей. Так, поки агдс було два роки, ми можемо продовжити решті частини програми. Тепер, пам'ятайте, що ARGV 1 завжди є рядком. Але ми хочемо, щоб розглядати його як ціле. Так, ми використовуємо функцію atoi Це вищезазначене безліч р специфікації для перетворення Рядок агду 1 до цілого числа, і ми зберігаємо, що в ключі. Ми хочемо, щоб переконатися, що ціле , Який був введений не є негативним. І якщо це так, ми хочемо надрукувати, що в користувач, що вони не дозволяють щоб зробити це, і повернутися. Отже, тепер у нас є діючий число від користувача. Але нам потрібно, щоб отримати рядок з Користувач, який ми хочемо зашифрувати. Таким чином, ми звикли робити-то час як цикл і використовувати отримати рядок, щоб отримати цю рядок з користувача і продовжувати отримувати рядок ні, поки вони насправді введіть допустиму рядок. Як тільки ми отримаємо цю рядок, ми може піти на зашифрувати його. Таким чином, це для петлі робить що шифрування. Зверніть увагу, що ми ітерації від I дорівнює 0 т весь шлях до Я рівних де п визначається як довжина наше послання, де повідомлення є Рядок, користувач ввів. Таким чином, ми перебору всіх символи в рядку. І якщо символ у верхньому регістрі, то ми збираємося перевести його за допомогою цього Формула, яку ми будемо отримати в секунду. І якщо це був нижній регістр, то ми змістити його з допомогою це дуже схожі формула. І якщо це не було ні у верхньому регістрі, ні рядкова буква - наприклад, може бути декілька або символ - то ми не збирається нічого робити з ним. Отже, які ці формули? Ну, як ми переходимо персонажу? Ми хочемо, щоб розглядати характер Як число 0. І ми хочемо, щоб розглядати характер B як число 1, і так далі. Це нульового та першого символів алфавіту і так далі. Так от, повідомлення я мінус передбачається дати нам чисельну місце буква в алфавіті. Так що, якщо повідомлення я це, це збирається дати нам 0. Тепер ми хочемо додати до того, що число, яке користувач хоче повернути лист на. Так що, якщо вони увійшли 3, а потім, якщо повідомлення я був, це дасть нам 0 і плюс Ключ дасть нам 3. Так що тепер, ми розглядаємо Третє місце в алфавіті. Ми побачимо, чому ми повинні мод по кіл-листів в секунду. Але врешті-решт, ми хочемо додати до кінець ще раз, щоб перемістити нас назад у Значення ASCII для цих символів замість числових місць в алфавіт з цих символів. Так чому ж ми мод на NUM букв? Пам'ятайте, що ми хочемо, щоб обернути навколо з кінця алфавіту в початку алфавіту. Так, якщо користувач увійшов Z, то вирахування з який збирається дати нам 25. І якщо ключ були 3, потім ми збираємося мати 28. Але Z слід обернути навколо в АВС, так 28 мод піт листа, який хеш певні як 26 і слід було очікувати, збирається дати нам 2, де С-друга буква алфавіт, якщо згадати, що це нульова буква алфавіту. Так ось чому ми повинні мод на NUM буквами. Тепер ми повинні зробити точно такий же речі для малих літер, крім пам'ятаю, що коли ми маємо справу з малі літери, вони мають різні Значення ASCII. І тому ми повинні відняти і додати на перекласти його з нижнього регістру Значення ASCII, а потім назад оригінальні рядкові значення ASCII. І, нарешті, що дасть нам наша зашифроване повідомлення. І врешті-решт, ми просто роздрукувати що повідомлення, і цим все сказано. Мене звуть Боб, і був Цезар.