hilfdirselbst.ch
Facebook Twitter gamper-media
Momo
Beiträge: 48
10. Mai 2004, 22:06
Beitrag #1 von 3
Bewertung:
(700 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Caesar-Verschiebung


Weiss jemand wie man auf einem Texas Instuments Taschenrechner eine einfache Caesarverschiebung programmiert? Also mit vorgabe der Verschiebungszahl!
Dan wird bei der Verschiebung um 2 Stellen z.B. aus ABCDE CDEFG...
Ich habe den TI-89!


Dankbar für jeden noch so kleinen Tipp
Momo Top
 
X
jmraemer
Beiträge: 48
10. Mai 2004, 22:40
Beitrag #2 von 3
Beitrag ID: #84749
Bewertung:
(700 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Caesar-Verschiebung


Hi!

Ich hab hier nur einen TI-82, da duerfte man kaum Chancen haben. Wenn der 89 Stringverarbeitung hat sollte es relativ leicht sein:
schleife: vom ersten bis zum letzten Buchstaben
{
ersetzen durch entsprechenden naechsten
}
Dabei kannst du die Buchstaben vielleicht ueber ihren Code ansprechen (die einzige Moeglichkeit, die ich beim 82 sehe) oder moeglicherweise in ein Array/Liste packen und da ueber den Index gehen, dann musst du nur den Ueberlauf bei index 25 (wenn du bei 0 anfaengst) bedenken.

Ich bin jetzt muede und geh schlafen, vielleicht schreib ich morgen noch was, da waere es sinnvoll, wenn du mir sagen koenntest, wie der 89 mit Strings umgeht (also ob du sie in Variablen speichern kannst etc.).

Jan-Martin
als Antwort auf: [#84741] Top
 
Momo
Beiträge: 48
11. Mai 2004, 20:41
Beitrag #3 von 3
Beitrag ID: #84952
Bewertung:
(700 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Caesar-Verschiebung


Hey, danke für die Antwort...
Das mit den Strings weiss ich nich so genau, hab aber was im Internet gefunden: http://www.land.salzburg.at/...deutsch/ti92p89d.pdf
Auf Seite 38 wird die Caesarverschiebung als Teilstück eines zusammenhängenden Programmes beschrieben. Hab versucht, nur sie Caesarverschiebung da rauszupicken, klappt aber nich ganz...
Vom Prinzip her is das eigentlich genau das was ich brauche.
Hab es auf "TOPPASCAL" programmiert, da klappts, bin aber mit dem TI-89 nich so geübt...

program caesar;
var klartext:string;
shift,i,x:integer;
begin
Input('Geben Sie bitte den Klartext ein (in Kleinbuchstaben)',klartext);
Input('Geben Sie nun bitte die gewünschte Verschiebungszahl ein',shift);
if shift>=26 then shift:=shift-26;
if shift<=-26 then shift:=shift+26;
for i:=1 to length(klartext) do
begin
x:=ord(klartext)-97+65+shift;
if x<65 then x:=x-85+90;
if x>90 then x:=x-90+65;
if ord(klartext)=32 then x:=32;
write(chr(x));
end;
end.


Danke für die Bemühungen
MfG
Momo

als Antwort auf: [#84741] Top