>> ROB BOWDEN: Sveiki, es esmu Rob.
Un, kad Romā, lai programma kā romieši darīt.
Tātad, pirmā lieta, kas mums jādara, ir pārbaude lai pārliecinātos, ka lietotājs faktiski ieraksta
skaitlis, ko mēs gribam, lai pagrieztu katram raksturs, ko pie komandrindas.
>> Tātad, mēs pārbaudām.
Argc ir vienāds ar 2?
Ja tā nav, tas nozīmē, ka lietotājs vai nu nestājās numuru,
komandrindas, vai viņi iegāja pārāk daudz lietas pie komandrindas, kuros
gadījumā mēs nezinām, ko darīt ar pārējām lietām.
Tātad, kamēr argc bija divi, mēs varam turpināt ar pārējo programmas.
>> Tagad, atcerieties, ka ARGV 1 vienmēr virkne.
Bet mēs gribam, lai ārstētu to kā vesels skaitlis.
Tātad, mēs izmantojam atoi funkciju, kas ir os p komplekts spec pārvērst
string argv 1 līdz veselam skaitlim, un mēs glabāt ka atslēgu.
Mēs vēlamies, lai pārliecinātos, ka skaitlis , kas tika iekļauta nav negatīvs.
Un, ja tā bija, mēs vēlamies, lai drukātu, ka, lai lietotājs, kas viņi nav atļauta
lai to izdarītu, un atgriezties.
>> Tātad, tagad mums ir derīgs numuru no lietotāja.
Bet mums ir nepieciešams, lai iegūtu virkni no lietotājs, ka mēs gribam, lai šifrētu.
Tāpēc mēs izmantojām darīt, kamēr cilpa un izmantot saņemt string, lai iegūtu šo virkni no
lietotāju, un turpina saņemt virkni līdz brīdim, kad tie faktiski
ievadiet derīgu virkni.
>> Pēc tam, kad mēs esam, ka virkne, mēs var doties uz šifrēt to.
Tātad, šis cilpa dara ka šifrēšanu.
Ievērojiet, ka mēs esam atkārtojot no i vienāds ar 0 t visu ceļu līdz pat I atbilst
n, kur n ir noteikts kā garumu mūsu vēstījums, kurā ziņa ir
string, ka lietotājs ir ievadījis.
>> Tāpēc mēs esam atkārtojot visas rakstzīmes virknē.
Un, ja raksturs ir lielajiem burtiem, tad Mēs ejam, lai pārslēgtos to, izmantojot šo
formula, ko mēs nokļūt sekundē.
Un, ja tas ir mazajiem burtiem, tad mēs novirzīt to, izmantojot tā
ļoti līdzīgs formula.
Un, ja tas nebija ne lielais, ne mazo burtu - piemēram, tā
varētu būt skaitlis vai simbols - tad mēs nav gatavojas kaut ko darīt, lai to.
>> Tātad, kādi ir šīs formulas?
Nu, kā mēs novirzīt rakstzīmju A?
Mēs vēlamies, lai ārstētu raksturu Kā skaitlis 0.
Un mēs gribam, lai ārstētu raksturu B kā numurs 1, un tā tālāk.
Tas ir 0., Un pirmās rakstzīmes alfabēta un tā tālāk.
>> Tātad šeit, ziņa es mīnuss ir paredzēts lai dotu mums skaitlisko vietu
alfabēts.
Tātad, ja ziņojumu i ir šī gatavojas sniegt mums 0.
Tagad mēs vēlamies, lai pievienotu, ka numuru, lietotājs vēlas
pagrieztu vēstules.
Tātad, ja tie ievadīta 3, tad, ja ziņojumu man bija, tas mums dos 0 un plus
Galvenais dos mums 3.
>> Tāpēc tagad, mēs esam gatavi izskatīt Trešo vietu alfabētu.
Mēs redzēsim, kāpēc mums ir nepieciešams, lai mod ar num vēstulēm sekundē.
Bet galu galā, mēs vēlamies, lai pievienotu uz galu atkal novirzīt mūs atpakaļ
ASCII vērtības šiem varoņiem vietā skaitliskās vietām
alfabēts no šiem burtiem.
>> Tātad, kāpēc mēs mod ar num burtiem?
Atcerieties, ka mēs vēlamies, lai wrap ap no alfabēta beigām līdz
sākot no alfabēta.
Tātad, ja lietotājs ir ievadīta Z, tad atņemot no tā gatavojas
dod mums 25.
Un, ja atslēga ir 3, tad Mēs ejam, lai būtu 28.
Bet Z ir wrap ap ABC, tāpēc 28 mod NUM vēstules, kas ir hash definēts
kā 26 sagaidāms, gatavojas sniegt mums 2, kur C ir otrā vēstule
alfabēts, ja jūs atceraties, ka ir 0. alfabēta burts.
>> Tātad, tas ir iemesls, kāpēc mums ir nepieciešams, lai mod ar num burtiem.
Tagad mums ir nepieciešams darīt to pašu precīzu lieta uz mazajiem burtiem, izņemot gadījumus,
atcerieties, ka tad, kad mums ir darīšana ar mazie burti, tie ir dažādi
ASCII vērtības.
Un tāpēc mums ir nepieciešams, lai atņemtu un pievienot novirzīt to uz leju no mazajiem
ASCII vērtības un pēc tam atpakaļ uz oriģināli mazos ASCII vērtības.
>> Un, visbeidzot, ka būs dod mums Mūsu šifrētu ziņu.
Un galu galā, mēs vienkārši izdrukāt ka vēstījums, un tas arī viss.
Mans vārds ir Rob, un bija Cēzars.