Text String mit PrintN in einer For Next Schleife ?

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

Text String mit PrintN in einer For Next Schleife ?

Beitrag von Ironsmurf »

Hallo zusammen

versuche gerade den DIM-Befehl zu lernen und die eingegebenen Daten wieder über PrintN in einer For-Next Schleife in einem Konsolenfenster anzeigen zu lassen. Aber etwas mache ich falsch.

Code: Alles auswählen

OpenConsole()
Dim Movies.s(4)                  

Movies(0) = "007 - James Bond - Die Welt ist nicht genug"             
Movies(1) = "007 - James Bond - In toedlicher Mission"               
Movies(2) = "007 - James Bond - Octopussy"             
Movies(3) = "007 - James Bond - Sag niemals nie"            
Movies(4) = "007 - James Bond - Stirb an einem anderen Tag"              

For Index.b = 0 To 4
 film$ = movies.s(0)
PrintN (film$) ; Vermute in dieser Zeile einen Fehler !
 index.b + 1
Input()
Next   
CloseConsole() 

Vielen Dank schon mal
Es kommt immer auf die Sichtweise des Betrachters an.
walker
Beiträge: 278
Registriert: 29.08.2004 18:39
Wohnort: Bayern

Beitrag von walker »

Hi,

Du darft innerhalb einer For/Next-Schleife den Zähler nicht selbst hochsetzen... das macht die Schleife alleine. Die Zeile

Code: Alles auswählen

 index.b + 1 
ist zuviel.
Außerdem musst Du auch noch sagen, welchen Index Du gerade anzeigen willst. Die Zeile

Code: Alles auswählen

film$ = movies.s(index)
lauten. (du hast da immer 0 stehen....
Zuletzt geändert von walker am 07.02.2006 12:07, insgesamt 1-mal geändert.
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

Beitrag von Ironsmurf »

habe die zeile raus genommen, jetzt zeigt er mir immer nur den ersten Datensatz an, das ganze 5 mal, es muss also noch ein Fehler im Script sein.
Es kommt immer auf die Sichtweise des Betrachters an.
walker
Beiträge: 278
Registriert: 29.08.2004 18:39
Wohnort: Bayern

Beitrag von walker »

zu spät... hatte den fehler auch erst übersehen... und meinen Post nochmal angepasst...

cu
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Code: Alles auswählen

film$ = movies.s(Index)
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
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

Beitrag von Ironsmurf »

Vielen Dank für eure Hilfe,
als Anfänger ist es nicht immer einfach, von daher

EIN NETTES DANKE SCHÖN an alle die mit uns

Anfängern so viel Geduld beweisen.
Es kommt immer auf die Sichtweise des Betrachters an.
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

Beitrag von Ironsmurf »

Noch eine Frage bitte

Code: Alles auswählen

OpenConsole()
Dim Movies.s(4)                  

Movies(0) = "007 - James Bond - Die Welt ist nicht genug"             
Movies(1) = "007 - James Bond - In toedlicher Mission"               
Movies(2) = "007 - James Bond - Octopussy"             
Movies(3) = "007 - James Bond - Sag niemals nie"            
Movies(4) = "007 - James Bond - Stirb an einem anderen Tag"
       
For Index.b = 0 To 4
 film$ = movies.s(index)
PrintN (film$)
Input()
If FindString ("film$(index.b)","ni",1)
Else
EndIf
Next   
CloseConsole()

Versuche über Findstring, einen Teil der Datensätze zu finden, aber er gibt mir immer alle aus, wo liegt der Fehler ?
Danke
Es kommt immer auf die Sichtweise des Betrachters an.
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Code: Alles auswählen

OpenConsole()
Dim Movies.s(4)                  

Movies(0) = "007 - James Bond - Die Welt ist nicht genug"             
Movies(1) = "007 - James Bond - In toedlicher Mission"               
Movies(2) = "007 - James Bond - Octopussy"             
Movies(3) = "007 - James Bond - Sag niemals nie"            
Movies(4) = "007 - James Bond - Stirb an einem anderen Tag"

$suche = Input()
For Index.b = 0 To 4
 film$ = movies.s(index)
 If FindString (film$,$suche,1)
   PrintN(film$)
 EndIf
Next   
CloseConsole()
ungetestet da gerade PBlos ;)
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
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 »

freedimension hat geschrieben: ungetestet da gerade PBlos ;)
Gute Besserung :mrgreen:
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
Sylvia
verheiratet<br>1. PureGolf-Gewinner
Beiträge: 487
Registriert: 29.08.2004 09:42
Wohnort: Old Europe

Beitrag von Sylvia »

@freedimension:
Das ist ja interessant! Gleich 2x in deinem Code-Beispiel:

Code: Alles auswählen

$suche
Was ist das für ein Variablentyp ? :mrgreen:
Basic Pur = PureBasic
Antworten