1.1-Introductie-Programmeren

Berichten versleutelen

Moeilijkheid: Filled Filled Outlined

Schrijf een programma waarin je een bericht kan inlezen en deze versleuteld met het “Caesar cipher”-algoritme. Het idee van dit algoritme is dat je elke letter van het bericht vervangt voor een letter “ergens anders uit het alfabet”. Deze positie wordt bepaald op basis van de zogehete “ciper”. Stel dat je een cipher met de waarde 3 hebt, dan betekent dit dat van een bericht alle ‘a’-letters worden vervangen door een ‘d’ (want de ‘d’ letter staat 3 plekjes verder in het alfabet dan de ‘a’). De letter ‘b’ wordt vervolgens een ‘e’, etc.

Om dit eenvoudig te doen is het handig om letters en integers naar elkaar te casten. Bekijk bijv. onderstaande code:

char character = 'a';
int positionAscii = (int) character;
int newPositionAscii = positionAscii + 4; // In this case, the cipher 4 is used.
char cryptChar = (char) newPositionAscii;

Let op dat het handig is dat je weet dat alle letters voorkomen in de Ascii-tabel. Deze tabel bevat een overzicht van de meeste printbare letters en hun bijbehorende codes.

Om de encryptie volledig te maken zal de computer zelf een cipher bepalen. Deze ciper is een getal tussen 1 en 26.

Om je programma te testen, versleutel de volgende woorden: 1) Je eigen naam. 2) “introductie” 3) “hboict” 4) “ikwistnietdatjeeenwoordzolangkanmakenalsjewiltalsjemaargeenspatiestussendeletterszet”

Voorbeeld

Example