IF

Anfängerfragen zum Programmieren mit PureBasic.
Major
Beiträge: 1
Registriert: 07.07.2007 13:06

IF

Beitrag von Major »

hi hab gestern mal angefangen ins programmieren reinzuschnuppern von daher erstmal einen guten tag an alle:)
So aber jetzt komme ich schon an einer stelle nicht weiter(für euch sicher ganz simple) :

Code: Alles auswählen

geld = Input$ ("wie viel kostet der spaß?")
If geld <3>3 Then Print "uff ganz schön teuer"
er fragt als erstes ob wie viel es kostet und wenn ich dann eine zahl unter 3 eingeben wird gefragt ob das ok ist.
wenn ich jetzt ja eingebe soll er mir "ok" , und wenn ich nein eingebe "schade" ausgeben.
hoffe ihr könnt mir helfen :) bzw. wie man es verschachteln muss

Gruß
Major

EDIT: hm hat jetzt nicht den ganzen code genommen :(
Benutzeravatar
Tafkadasom2k5
Beiträge: 1578
Registriert: 13.08.2005 14:31
Kontaktdaten:

Beitrag von Tafkadasom2k5 »

Hi und welcome :)
Es gibt keinen print-Befehl unter Purebasic. Hier musstdu den "MessageRequester" nutzen,

Code: Alles auswählen

geld.l = 5

if geld > 3
  MessageRequester "Uh, ganz schön teuer!"
else
  MessageRequester "Naja, der Preis scheint okay"
endif
Edit:
Den Input$-Befehl (sofern er ohne Konsole funktioniert), gibt einen String zurück. Von daher kannst du einen String nicht mit einer Zahl vergleichen, geschweige den einen String in eine Zahlenvariable packen.

Ich weiß zwar nicht, wie der Input Befehl genutzt wird, aber

Code: Alles auswählen

geld.l = Val(Input$)
Sollte dir weiterhelfen. "Val()" wandelt einen String in eine Zwahl um. Umgekehrt wandelt "Str()" eine Zahl in einen String um damit man eine Zwhal zB im Messagerequester ausgeben lassen kann.

Gr33tz
Tafkadasom2k5
OpenNetworkConnection() hat geschrieben:Versucht eine Verbindung mit dem angegebenen Server aufzubauen. 'ServerName$' kann eine IP-Adresse oder ein voller Name sein (z.B.: "127.0.0.1" oder "ftp.home.net").
php-freak hat geschrieben:Ich hab die IP von google auch ned rausgefunden!
Benutzeravatar
D@nte
Beiträge: 324
Registriert: 24.04.2007 15:33
Wohnort: Berlin

Beitrag von D@nte »

>Es gibt keinen print-Befehl unter Purebasic
*hust*
Und was ist dan Print(Text$) und PrintN(Text$)

Und wenn du nem Anfänger Pseudocode postest dann sag ihm das doch bitte auch denn

Code: Alles auswählen

MessageRequester "Uh, ganz schön teuer!"
gibt's garantiert nicht

Code: Alles auswählen

Titel.s         = "Kosten"
Mitteilung.s    = "Wie viel kostet der spaß?"
StandardText.s  = ""
Input.s         = ""

; "Fensteranwendung"
Input = InputRequester(Titel, Mitteilung, StandardText)

If Val(Input) < 1
  MessageRequester("Ausgabe", "Werte unter 1 sind nicht zugelassen!")
ElseIf Val(Input) > 3
  MessageRequester("Ausgabe", "Uh, ganz schön teuer!")
Else
  MessageRequester("Ausgabe", "Naja, der Preis scheint okay")
EndIf

; "Konsolenanwendung"
If OpenConsole()
  Print(Mitteilung)
  PrintN("")
  Input = Input()
  If Val(Input) < 1
    Print("Werte unter 1 sind nicht zugelassen!")
  ElseIf Val(Input) > 3
    Print("Uh, ganz schön teuer!")
  Else
    Print("Naja, der Preis scheint okay")
  EndIf
  Input()
EndIf

End
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Ist jetzt nur 'ne Vermutung, aber ich könnte mir vorstellen, daß Major evtl. gar kein PureBasic hat, sondern einfach nur dachte, daß dieses Forum generell BASIC behandelt... also im Sinne von "PureBasic => ein Forum wo es nur (pur) um Basic geht"
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Benutzeravatar
PureBasic4.0
Beiträge: 785
Registriert: 29.10.2006 17:26
Wohnort: 127.0.0.1

Beitrag von PureBasic4.0 »

Hi, Major

Hier ist genau dein Code (nur halt PureBasic kompatibel gemacht und mit Kommentaren versehen):

Code: Alles auswählen

OpenConsole()
Print("Wie viel kostet der Spaß?   ") ;Es wird ein String mit ein paar Leerzeichen in die Konsole geschrieben
GeldString$ = Input();Und der Benutzer kann jetzt etwas reinschreiben
Geld = Val(GeldString$) ;Wandelt den String GeldString$ in eine Long-Variable um. Das ist notwendig zum überprüfen der Größe von Geld
If Geld > 3 ;Ist klar, denke ich
  PrintN("Uff, ganz schön teuer"); PrintN schreibt einen String + Eine Leerzeile am Ende in die Konsole. Print schreibt nur den String
Else
  PrintN("Naja... Ganz ok"); Dasgleiche
EndIf
Input() ;Hilft, dass die Konsole offen bleibt, bis der user enter drückt
//edit:

@ZeHa: Ich denke, Major steigt von VB auf (P?)B um.
Zuletzt geändert von PureBasic4.0 am 07.07.2007 16:07, insgesamt 1-mal geändert.
PB 4.50 RC1 + Ubuntu 10.04 LTS + Windows 7 x64
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

dann soltet ihr aber auch den befehl OpenConsole() einbaun... ;)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
PureBasic4.0
Beiträge: 785
Registriert: 29.10.2006 17:26
Wohnort: 127.0.0.1

Beitrag von PureBasic4.0 »

ich dachte, das wäre klar :allright:
PB 4.50 RC1 + Ubuntu 10.04 LTS + Windows 7 x64
Antworten