ROB BOWDEN: Hallo, ich bin Rob. Und wenn in Rom, wir Programm wie die Römer. Also, erste, was wir tun müssen, ist zu überprüfen um sicherzustellen, dass der Benutzer tatsächlich eingegeben die Zahl, die wir je gedreht werden soll Charakter von in der Befehlszeile. So prüfen wir. Ist argc gleich 2? Wenn es nicht ist, bedeutet, dass der Benutzer entweder nicht die Nummer geben Sie die Befehlszeile oder sie zu viele eingetragen Dinge in der Befehlszeile, in der Fall, dass wir nicht wissen, was zu tun ist mit dem Rest der Dinge. Also, so lange wie argc zwei war, können wir weiterhin mit dem Rest des Programms. Nun, denken Sie daran, dass argv 1 ist immer ein String. Aber wir wollen es als ganze Zahl zu behandeln. So nutzen wir die Funktion, die atoi ist genannten p-Set spec zur Umwandlung der String argv ein in eine ganze Zahl, und wir speichern, dass in Schlüssel. Wir wollen sicherstellen, dass die ganze Zahl dass eingetragen wurde, ist nicht negativ. Und wenn es war, zu drucken möchten wir der Benutzer, der sie nicht erlaubt das zu tun, und zurück. So, jetzt haben wir einen gültigen Nummer von dem Benutzer. Aber wir müssen einen String aus der sich Benutzer, die wir verschlüsseln möchten. Also wir tun-while-Schleife verwenden und bekommen verwendet String, der diese Zeichenfolge aus der sich Benutzer, und weiterhin immer Zeichenfolge bis sie tatsächlich geben Sie eine gültige Zeichenfolge. Sobald wir diese Zeichenfolge, wir kann gehen, um es zu verschlüsseln. So wird diese for-Schleife zu tun dass die Verschlüsselung. Beachten Sie, dass wir von i laufen t gleich 0 bis hin zur I gleich n, wobei n die Länge des definierten unsere Botschaft, wo die Botschaft ist die Zeichenfolge, die der Benutzer eingegeben werden. Daher freuen wir uns über alle laufen Zeichen in der Zeichenfolge. Und wenn ein Zeichen in Großbuchstaben, dann wir sind dabei, es zu verschieben mit diesem Formel, auf die wir bekommen, um in einer Sekunde. Und wenn es in Kleinbuchstaben wurde, dann wir werden es mit diesem ist verschoben sehr ähnliche Formel. Und wenn es weder ein Groß noch ein Kleinbuchstabe - es beispielsweise könnte eine Zahl oder ein Symbol sein - dann werden wir nicht gehen, um etwas zu tun. Also, was sind diese Formeln? Nun, wie wir verschieben die Zeichen A? Wir wollen den Charakter behandeln A als die Zahl 0 ist. Und wir, um das Zeichen zu behandeln wollen B als die Nummer 1, und so weiter. Es ist die nullte und erste Zeichen des Alphabets und so weiter. So, hier ist die Nachrichten i minus A soll uns die numerische Stelle des zu geben Buchstabe im Alphabet. Also, wenn ich Nachricht ist A, diese wird uns geben, 0. Nun, um zu, dass das Add wollen wir Nummer, die der Benutzer möchte drehen Sie den Brief. Also, wenn sie eingetragen 3, dann, wenn Nachricht Ich war ein, wird dies uns geben 0 und zzgl. Schlüssel wird uns drei. So, jetzt sind wir in Anbetracht der dritten Platz im Alphabet. Wir werden sehen, warum wir mod num von Buchstaben in einer Sekunde. Aber schließlich, auf die wir hinzufügen möchten Ein am Ende wieder zu uns zurück in die Schiebe ASCII-Werte für diese Zeichen Statt der numerischen Stellen in der Alphabet dieser Zeichen. Also, warum wir von num Buchstaben mod? Denken Sie daran, dass wir auf rund wickeln wollen vom Ende des Alphabets auf der Anfang des Alphabets. Also, wenn der Benutzer eingegeben hatte Z, dann Subtrahieren A aus, dass wird sich geben uns 25. Und wenn der Schlüssel waren drei, dann wir werden 28 haben. Aber Z sollte um ABC einzuwickeln, also 28 mod num Briefe, die Hash definiert ist als 26 zu erwarten ist, wird zu geben us 2, wobei C der zweite Buchstabe das Alphabet, wenn Sie daran denken, dass A die nullte Buchstabe des Alphabets. Also das ist, warum wir Mod num Buchstaben. Nun, um genau die gleiche Sache zu tun brauchen wir für Kleinbuchstaben, außer daran erinnern, dass, wenn wir es zu tun haben Kleinbuchstaben, andere haben sie ASCII-Werte. Und so müssen wir subtrahieren und addieren für ein um sie von der Klein unten verschoben ASCII-Werte und dann wieder auf die Original Klein ASCII-Werte. Und schließlich, dass Sie uns geben unsere verschlüsselte Nachricht. Und am Ende, wir haben nur ausdrucken dass die Botschaft, und das ist es. Mein Name ist Rob und war Caesar.