Gymnasium Zitta/Langer/Beispiel 2
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Pascal</language>
'''Der Caesar-Algorithmus'''
# Teste das Programm mit verschiedenen Eingaben.
# Erkläre mit eigenen Worten, was das Programm macht.
<code id="4d36f1248efa0">
var t,wort:string;
v:integer;
</code>
<code id="4d36f1248f004" hidden>
t:='HALLO';
v:=2;
wort:='';
procedure caesar_test;
var a,i,ascii:integer;
begin
a:=length(t);
wort:='';
for i:=1 to a do
begin
ascii:=(t[i]); //ord noch nicht bekannt, einfach weglassen, dann wandelt er automatisch um
if (ascii<91) and (ascii>64)
then begin ascii:=ascii+v;
if ascii>90 then ascii:=ascii-26;
wort:=wort+chr(ascii)
end
else wort:=wort+' ';
end;
end;
</code>
<run id="4d36f1248f0c6">
t:= inputDialog('Klartext');
v:= StrToInt(inputDialog('Verschiebezahl'));
caesar_test;
writeln (Wort);
</run>
# Ergänze den Quelltext.
<code id="4d36f1248f05b">
var t,wort:string;
v:integer;
procedure caesar;
var a,i,ascii:integer;
begin
//Länge vom Klartext t bestimmen
//Zählschleife mit Laufvariable a
begin
//Ermittle den ASCII-Code (ascii) des i-ten Buchstabens
//addiere v zum Ascii-Code
wort:=wort+chr(ascii)
end;
end;
</code>
<check>result:= caesar = Caesar_test;</check>