Forum | | | | Julian Schmidt | Hallo, ich würde gerne ein Zahlenfolge mit Translate umformen. (Mit Kommas) Und zwar wie folgt: 0<->5 1<->6 2<->7 3<->8 4<->9
Es sollen kein Buchstaben (Punkt und Komma) umgewandelt werden, nur Zahlen! Mein zweiter Ansatz sieht wie folgt aus:
declare Ausgelesen$,Ablage$,Ablage2$,GesamterZahlenString$
Ausgelesen$=Input$("Bitte geben sie eine Zahlenfolge ein","Eingabe","4")
whileloop Len(Ausgelesen$)
Ablage$=Mid$(Ausgelesen$,&loop,1)
Ablage2$=Translate$(Ablage$,"0","5")
Ablage2$=Translate$(Ablage$,"1","6")
Ablage2$=Translate$(Ablage$,"2","7")
Ablage2$=Translate$(Ablage$,"3","8")
Ablage2$=Translate$(Ablage$,"4","9")
GesamterZahlenString$=GesamterZahlenString$+Ablage2$
clear ablage2$
Endwhile
MessageBox("Ergebnis: "+GesamterZahlenString$,"INFO",64)
Wie bekommt man es os hin das jedes Zeichen korekt umgeformt wird.
Und sich keine Umformung wieder aufhebt (Translate$(Ablage$,"4","9") und danach Translate$(Ablage$,"9","4")).
LG
Julian57 |
| | | ˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗ Webseite [...] | 08.04.2011 ▲ |
| |
| | Nico Madysa | Du kannst zuerst 0->A, 1->B, usw. umformen, dann 5->0, 6-1, usw. und zum Schluss A->5, B->6, usw. |
| | | | |
| | Julian Schmidt | Gut dann sieht der Code so aus:
declare Ausgelesen$,Ablage$,Ablage2$,GesamterZahlenString$
Ausgelesen$=Input$("Bitte geben sie eine Zahlenfolge ein","Eingabe","4")
whileloop Len(Ausgelesen$)
Ablage$=Mid$(Ausgelesen$,&loop,1)
Ablage2$=Ablage2$+Translate$(Ablage$,"0","A")
Ablage2$=Ablage2$+Translate$(Ablage$,"1","B")
Ablage2$=Ablage2$+Translate$(Ablage$,"2","C")
Ablage2$=Ablage2$+Translate$(Ablage$,"3","D")
Ablage2$=Ablage2$+Translate$(Ablage$,"4","E")
Ablage2$=Ablage2$+Translate$(Ablage$,"5","A")
Ablage2$=Ablage2$+Translate$(Ablage$,"6","1")
Ablage2$=Ablage2$+Translate$(Ablage$,"7","2")
Ablage2$=Ablage2$+Translate$(Ablage$,"8","3")
Ablage2$=Ablage2$+Translate$(Ablage$,"9","4")
Ablage2$=Ablage2$+Translate$(Ablage$,"0","5")
Ablage2$=Ablage2$+Translate$(Ablage$,"A","5")
Ablage2$=Ablage2$+Translate$(Ablage$,"B","6")
Ablage2$=Ablage2$+Translate$(Ablage$,"C","7")
Ablage2$=Ablage2$+Translate$(Ablage$,"D","8")
Ablage2$=Ablage2$+Translate$(Ablage$,"E","9")
GesamterZahlenString$=GesamterZahlenString$+Ablage2$
clear ablage2$
Endwhile
MessageBox("Ergebnis: "+GesamterZahlenString$,"INFO",64)
Nur wie bekomme ich das funktionsfähig. Es werden immernoch falsche Werte ausgegeben, muss ich einen anderen Variablen-Typ nehmen oder was stimmt da nicht? |
| | | ˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗ Webseite [...] | 08.04.2011 ▲ |
| |
| | Nico Madysa | Einfach überall das "Ablage2$+" entfernen. Das übersetzte darf nicht drangehängt werden, sondern soll das alte ersetzen. Oh, und du hast bei "Translate$(Ablage$,"5","A")" dich vertippt. |
| | | | |
| | Julian Schmidt | Geht ohne "Ablage2$+" genauso wenig
declare Ausgelesen$,Ablage$,Ablage2$,GesamterZahlenString$
Ausgelesen$=Input$("Bitte geben sie eine Zahlenfolge ein","Eingabe","4")
whileloop Len(Ausgelesen$)
Ablage$=Mid$(Ausgelesen$,&loop,1)
Ablage2$=Translate$(Ablage$,"0","A")
Ablage2$=Translate$(Ablage$,"1","B")
Ablage2$=Translate$(Ablage$,"2","C")
Ablage2$=Translate$(Ablage$,"3","D")
Ablage2$=Translate$(Ablage$,"4","E")
Ablage2$=Translate$(Ablage$,"5","0")
Ablage2$=Translate$(Ablage$,"6","1")
Ablage2$=Translate$(Ablage$,"7","2")
Ablage2$=Translate$(Ablage$,"8","3")
Ablage2$=Translate$(Ablage$,"9","4")
Ablage2$=Translate$(Ablage$,"A","5")
Ablage2$=Translate$(Ablage$,"B","6")
Ablage2$=Translate$(Ablage$,"C","7")
Ablage2$=Translate$(Ablage$,"D","8")
Ablage2$=Translate$(Ablage$,"E","9")
GesamterZahlenString$=GesamterZahlenString$+Ablage2$
clear ablage2$
Endwhile
MessageBox("Ergebnis: "+GesamterZahlenString$,"INFO",64)
Nico Madysa (08.04.11)
Oh, und du hast bei "Translate$(Ablage$,"5","A")" dich vertippt.
Danke für den Hinweis |
| | | ˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗ Webseite [...] | 08.04.2011 ▲ |
| |
| | Jörg Sellmeyer | Du setzt ja auch immer wieder die Originalzeichenfolge als Basis ein.
Ab "B" mußt Du Ablage2$=Translate$(Ablage2$,"1","B") verwenden. |
| | | Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 08.04.2011 ▲ |
| |
| | | Über eine IF-Bedingungen bekomme ich es hin.
declare Ausgelesen$,Ablage$,Ablage2$,GesamterZahlenString$
Ausgelesen$=Input$("Bitte geben sie eine Zahlenfolge ein","Eingabe","4")
whileloop Len(Ausgelesen$)
Ablage$=Mid$(Ausgelesen$,&loop,1)
if Ablage$=0
Ablage$=5
elseif Ablage$=1
Ablage$=6
elseif Ablage$=2
Ablage$=7
elseif Ablage$=3
Ablage$=8
elseif Ablage$=4
Ablage$=9
elseif Ablage$=5
Ablage$=0
elseif Ablage$=6
Ablage$=1
elseif Ablage$=7
Ablage$=2
elseif Ablage$=8
Ablage$=3
elseif Ablage$=9
Ablage$=4
Endif
GesamterZahlenString$=GesamterZahlenString$+Ablage$
clear ablage2$
Endwhile
MessageBox("Ergebnis: "+GesamterZahlenString$,"INFO",64)
Geht das noch einfacher,eleganter lösen? |
| | | | |
| | Julian Schmidt | Ich habe das ganze jetzt mal auf das Alphabet übertragen. Es wird jeder Buchstabe um 13 Buchstaben im Alphapet verrückt.
declare Ausgelesen$,Ablage$,Ablage2$,key$
Ausgelesen$=Input$("Bitte geben sie einen Text ein","Eingabe","Mein Text")
whileloop Len(Ausgelesen$)
Ablage$=Mid$(Ausgelesen$,&loop,1)
Ablage2$=Translate$(Ablage$,"A","1")
Ablage2$=Translate$(Ablage2$,"B","2")
Ablage2$=Translate$(Ablage2$,"C","3")
Ablage2$=Translate$(Ablage2$,"D","4")
Ablage2$=Translate$(Ablage2$,"E","5")
Ablage2$=Translate$(Ablage2$,"F","6")
Ablage2$=Translate$(Ablage2$,"G","7")
Ablage2$=Translate$(Ablage2$,"H","8")
Ablage2$=Translate$(Ablage2$,"I","9")
Ablage2$=Translate$(Ablage2$,"J","0")
Ablage2$=Translate$(Ablage2$,"K","?")
Ablage2$=Translate$(Ablage2$,"L","!")
Ablage2$=Translate$(Ablage2$,"M","_")
Ablage2$=Translate$(Ablage2$,"N","A")
Ablage2$=Translate$(Ablage2$,"O","B")
Ablage2$=Translate$(Ablage2$,"P","C")
Ablage2$=Translate$(Ablage2$,"Q","D")
Ablage2$=Translate$(Ablage2$,"R","E")
Ablage2$=Translate$(Ablage2$,"S","F")
Ablage2$=Translate$(Ablage2$,"T","G")
Ablage2$=Translate$(Ablage2$,"U","H")
Ablage2$=Translate$(Ablage2$,"V","I")
Ablage2$=Translate$(Ablage2$,"W","J")
Ablage2$=Translate$(Ablage2$,"X","K")
Ablage2$=Translate$(Ablage2$,"Y","L")
Ablage2$=Translate$(Ablage2$,"Z","M")
Ablage2$=Translate$(Ablage2$,"1","N")
Ablage2$=Translate$(Ablage2$,"2","O")
Ablage2$=Translate$(Ablage2$,"3","P")
Ablage2$=Translate$(Ablage2$,"4","Q")
Ablage2$=Translate$(Ablage2$,"5","R")
Ablage2$=Translate$(Ablage2$,"6","S")
Ablage2$=Translate$(Ablage2$,"7","T")
Ablage2$=Translate$(Ablage2$,"8","U")
Ablage2$=Translate$(Ablage2$,"9","V")
Ablage2$=Translate$(Ablage2$,"0","W")
Ablage2$=Translate$(Ablage2$,"?","X")
Ablage2$=Translate$(Ablage2$,"!","Y")
Ablage2$=Translate$(Ablage2$,"_","Z")
Ablage2$=Translate$(Ablage2$,"a","1")
Ablage2$=Translate$(Ablage2$,"b","2")
Ablage2$=Translate$(Ablage2$,"c","3")
Ablage2$=Translate$(Ablage2$,"d","4")
Ablage2$=Translate$(Ablage2$,"e","5")
Ablage2$=Translate$(Ablage2$,"f","6")
Ablage2$=Translate$(Ablage2$,"g","7")
Ablage2$=Translate$(Ablage2$,"h","8")
Ablage2$=Translate$(Ablage2$,"i","9")
Ablage2$=Translate$(Ablage2$,"j","0")
Ablage2$=Translate$(Ablage2$,"k","?")
Ablage2$=Translate$(Ablage2$,"l","!")
Ablage2$=Translate$(Ablage2$,"m","_")
Ablage2$=Translate$(Ablage2$,"n","a")
Ablage2$=Translate$(Ablage2$,"o","b")
Ablage2$=Translate$(Ablage2$,"p","c")
Ablage2$=Translate$(Ablage2$,"q","d")
Ablage2$=Translate$(Ablage2$,"r","e")
Ablage2$=Translate$(Ablage2$,"s","f")
Ablage2$=Translate$(Ablage2$,"t","g")
Ablage2$=Translate$(Ablage2$,"u","h")
Ablage2$=Translate$(Ablage2$,"v","i")
Ablage2$=Translate$(Ablage2$,"w","j")
Ablage2$=Translate$(Ablage2$,"x","k")
Ablage2$=Translate$(Ablage2$,"y","l")
Ablage2$=Translate$(Ablage2$,"z","m")
Ablage2$=Translate$(Ablage2$,"1","n")
Ablage2$=Translate$(Ablage2$,"2","o")
Ablage2$=Translate$(Ablage2$,"3","p")
Ablage2$=Translate$(Ablage2$,"4","q")
Ablage2$=Translate$(Ablage2$,"5","r")
Ablage2$=Translate$(Ablage2$,"6","s")
Ablage2$=Translate$(Ablage2$,"7","t")
Ablage2$=Translate$(Ablage2$,"8","u")
Ablage2$=Translate$(Ablage2$,"9","v")
Ablage2$=Translate$(Ablage2$,"0","w")
Ablage2$=Translate$(Ablage2$,"?","x")
Ablage2$=Translate$(Ablage2$,"!","y")
Ablage2$=Translate$(Ablage2$,"_","z")
Key$=Key$+Ablage2$
clear ablage2$
Endwhile
MessageBox("Ergebnis: "+Key$,"INFO",64)
Wie kann man diese Arbeit aud wenige Zeilen übertragen? |
| | | ˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗ Webseite [...] | 08.04.2011 ▲ |
| |
| | | >> Kann man so eine Arbeit in wenige Zeilen fassen?
whileloop chr$(daLoop) |
| | | | |
| | Andreas Miethe
| | | | Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 09.04.2011 ▲ |
| |
| | Julian Schmidt | Ah ja, das sieht gut aus
Nur kommen bei manchen Buchstaben Sonderzeichen heraus.
LG
Julian57 |
| | | ˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗˗ Webseite [...] | 09.04.2011 ▲ |
| |
| | Andreas Miethe
| War auch nur als Anregung gedacht.
Hier ist noch eine. Du kannst Dir ja eine bzw. zwei Ersatztabellen machen und die Schleife laufen lassen.
|
| | | Gruss Andreas ________ ________ ________ ________ _ Profan 3.3 - XProfanX2 Win 95,98,ME,2000,XP,Vista - Win 7 32 / 64 Bit ASUS X93S - Intel Core I7-NVIDIA GForce 540M 8GB Arbeitsspeicher Homepage : [...] | 09.04.2011 ▲ |
| |
|
AntwortenThemenoptionen | 13.075 Betrachtungen |
ThemeninformationenDieses Thema hat 5 Teilnehmer: |