For - Next Schleife, ich bitte um HILFE

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Ironsmurf
Beiträge: 111
Registriert: 04.01.2006 12:57
Computerausstattung: AMD FX(tm)-6300 Six-Core Processor
3.50 GHz / 8 GB Ram
Windows 7 / 64bit / Ultimate
Purebasic 5.20 LTS (Windows - x86)
Wohnort: Deutschland

For - Next Schleife, ich bitte um HILFE

Beitrag von Ironsmurf »

Hallo zusammen

ich möchte einen Satz in einzelne Wörter zerlegen, nun dies habe ich auch geschafft, allerdings nicht besonders gut, da ich mit den For Next Schleifen noch nicht wirklich klar komme.

;String wird in einzelne Woerter geteilt
For k=1 To 15
ergebnis$ = StringField(text$, k, " ") : Debug (ergebnis$)
If k=1 : wort1$ = ergebnis$
ElseIf k=2 : wort2$ = ergebnis$
ElseIf k=3 : wort3$ = ergebnis$
ElseIf k=4 : wort4$ = ergebnis$
ElseIf k=5 : wort5$ = ergebnis$
ElseIf k=6 : wort6$ = ergebnis$
ElseIf k=7 : wort7$ = ergebnis$
ElseIf k=8 : wort8$ = ergebnis$
ElseIf k=9 : wort9$ = ergebnis$
ElseIf k=10 : wort10$ = ergebnis$
ElseIf k=11 : wort11$ = ergebnis$
ElseIf k=12 : wort12$ = ergebnis$
ElseIf k=13 : wort13$ = ergebnis$
ElseIf k=14 : wort14$ = ergebnis$
ElseIf k=15 : wort15$ = ergebnis$
EndIf
Next


Vieleicht ist jemand so nett, mir zu erklären wie ich diese Wörter in eine Schleife packen kann.
Benutze noch die Demo von PureBasic, habe die Vollversion schon bestellt, damit ich bald alle Funktionen nutzen kann.

Vielen Dank für eure Hilfe im voraus
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Hier mal ein Codebeispiel:

Code: Alles auswählen

text$ = "Die Geschwindigkeit nicht auf kosten der Sicherheit erhöhen"

;8 Wörter im String, als wird ein Array von 8 elementen gebildet
Dim Wort$(7) ;8 elemente (0-7)
For I = 0 To 7
  Wort$(I) = StringField(text$, I + 1, " ")
  Debug Wort$(I)
Next
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Froggerprogger
Badmin
Beiträge: 855
Registriert: 08.09.2004 20:02

Beitrag von Froggerprogger »

Hier ein weiteres, bei dem die Anzahl der Worte automatisch bestimmt wird:

Code: Alles auswählen

text$ = "Die Geschwindigkeit nicht auf kosten der Sicherheit erhöhen." 

;Anzahl der Wörter im String bestimmen:
num = CountString(text$, " ") + 1
Dim Wort$(num) ;num viele elemente (0 bis num-1) 
For I = 0 To num-1
  Wort$(I) = StringField(text$, I + 1, " ") 
  Debug Wort$(I) 
Next
!UD2
Antworten