Villeicht gibt es eine simple antwort...

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

icoon

Betreff: Villeicht gibt es eine simple antwort...

BeitragDo, Jan 26, 2006 21:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi leute, Very Happy

Hab schon seit wochen nach einer antwort auf meine Frage gesucht....doch nicht ein Hinweiß.....villeicht habe ich in die Falsche richtung geschaut oder villeicht was übersehen aber bitte Helft mir.
Idea

Und zwar :
Ich möchte ein Programm machen das "6 bustaben zum Wort umwandelt"

Beispiel :
"ebehrc" = "Becher"
aber ich finde keine antwort.

Vereinfacht :
Text1$=input$("Bustaben folge": ")
If Text1$= "ebehrc" Then
Print "Gefunden : Becher"
end if
end


ich möchte aber das ich egal in welcher reinfolge das schreibe : "ebehrc" oder "hrcebe" oder "ehrceb" das programm rausfindet Das "becher" hinkommt.
Ich schaffe es schon nur kann ich nicht alle 300 möglichkeiten hintereinander schreiben :

If text1 = "ebehrc" or Text1 = "hrcebe" or .... or... Then
Da muss es nen einfachen weg geben....bitte um hilfe
Question

Oder um den passenden hinweiß Wink

Dankeschön
cu, icoon
Wieder ein coder unterwegs ^^

etlam

BeitragDo, Jan 26, 2006 21:56
Antworten mit Zitat
Benutzer-Profile anzeigen
benutze
Code: [AUSKLAPPEN]
mid(text$,startpos,anzahl)


kopiert zeichen aus einem string
Damit musste es gehn
Schau mal den Befehl bei
http://www.blitzbase.de/befehle2d/mid.htm nach

Spikespine

BeitragDo, Jan 26, 2006 22:13
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habe dir mal eine Funktion geschrieben, die überprüft, OB das Suchwort mit dem eingabewort von der Buchstabenanzahl übereinstimmt. Wenn ich dich aber richtig verstanden habe, möchtest du, dass das Programm anhand eines eingegebenen Wortes ein "korrektes" Wort erkennt. Das ginge über eine große Datenbank die alle möglichen Wörter beinhaltet, mein Beispiel ließe sich darauf ausbauen.

Das hier sollte funktionieren.
Code: [AUSKLAPPEN]
suchtext$ = "becher"

eingabe$ =  "hrcebe"

anzzeichen = Len(suchtext$)
If Len(eingabe$) <> anzzeichen Then
   RuntimeError ("Falsche Zeichenanzahl!")
EndIf

Dim buchstaben(anzzeichen,1)

For i=1 To anzzeichen
   buchstaben(i,0) = Asc(mid(suchtext,i,1))
Next

For i=1 To anzzeichen

   b = 0
   a = Asc(Mid(eingabe$,i,1))
   Print Mid(eingabe$,i,1)
   For j=1 To anzzeichen
      If buchstaben(j,0) = a Then
         If buchstaben(j,1) = 0 Then
            buchstaben(j,1) = 1
            b=1
            Exit
         EndIf
      EndIf
   Next
   If b=0 Then
      Print suchtext$ + " - "+eingabe$+" stimmen nicht überein!"
      WaitKey
      End
   EndIf
Next

b=0
For i=1 To anzzeichen
   If buchstaben(i,1) = 0 Then
      Print suchtext$ + " - "+eingabe$+" stimmen nicht überein!"
      WaitKey
      b=1
      End
   EndIf
Next

If b=0 Then
   Print suchtext$ + " - "+eingabe$+" stimmen überein!"
   WaitKey
   End
EndIf
Athlon 64 3700+ | 1024 MB RAM | GeForce 7900 GT | Blitz2D, Blitz3D, BlitzPlus, BlitzMax
 

icoon

BeitragDo, Jan 26, 2006 22:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Laughing das hätt ich auch wissen müssen.

Das sind 2 richtig gute antworten und ich such da mit location und so ^^.

Dankeschön
Wieder ein coder unterwegs ^^

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group