Programmieren Lernen (bin total neu)

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen

sunny

BeitragDo, Dez 08, 2005 23:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe mir mal deinen Code angesehen (obwohl ich noch nicht mal Zeit habe für mich selbst) und mir sind ein paar Fehler auf gefallen.
Zum einen mal solltest du das mit dem Or lassen, wenn du es schon benuttz dann mus die vollständige Gleichung angeben wie Code: [AUSKLAPPEN]
If x=y or x=10 or x=45 then...

1.
Muss glaube ich wenn du schon vorher ein $ benutzt hast auch nach dem Input eins hin also müsste es lauten
BlitzBasic: [AUSKLAPPEN]
Eingabe$ = Input$(\"Antworte:\")

Dann schreibt man nicht If Input$ = ... sondern den Variablennamen
Eingabe$ und auch die folgenden Bedingungungen nix usw. müssen in Hochklammern stehen (nach meiner Erfahrung) und wie vor hin erklärt musste du auch jedes mal die vollständige Gleichung angeben, also als Code:

BlitzBasic: [AUSKLAPPEN]
If Eingabe$ = \"nix\" Or Eingabe$ = \"Nichts\" Or Eingabe$ = \"Garnichts\" Or Eingabe$ = \"Garnix\" Then Print \"das ist nicht gerade viel...\"


Aber vorallem scheint es BB nicht zu mögen wenn dannn mehrere Wörter so allein in der Gegend rumstehen, denn dann erkennt er die als eigene Variablen auch wenn sie zusammenhängen sollen.
Also hier mal dein Code als komplett funktionstüchtig

BlitzBasic: [AUSKLAPPEN]
Print \"was läuft denn so?\" 
Eingabe$ = Input(\"Antworte:\")
If Eingabe$ = \"nix\" Or Eingabe$ = \"Nichts\" Or Eingabe$ = \"Garnichts\" Or eingabe = \"Garnix\" Then Print \"das ist nicht gerade viel...\"
If Eingabe$ = \"Weis isch nicht\" Or Eingabe$ = \"keine ahnung\" Or Eingabe$ = \"weiss nicht\" Then Print \"aha\" Else Print \"oh ne\"
WaitKey
End


Code: [AUSKLAPPEN]
Print "was läuft denn so?"
Eingabe$ = Input("Antworte:")
If Eingabe$ = "nix" Or Eingabe$ = "Nichts" Or Eingabe$ = "Garnichts" Or eingabe = "Garnix" Then Print "das ist nicht gerade viel..."
If Eingabe$ = "Weis isch nicht" Or Eingabe$ = "keine ahnung" Or Eingabe$ = "weiss nicht" Then Print "aha" Else Print "oh ne"
WaitKey
End
Very Happy
 

Falk5T

BeitragFr, Dez 09, 2005 21:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Very Happy danke... blos mein Vater hat mir die aufgabe gegeben einen body mass index berechner zu mache... Ich soll das Gewicht (Kg) durch die Körpergrösse im Quadrat teilen... also stell dir vor ein jemand soll eingeben wieviel er wiegt und wie groß er ist, dann nehme ich die körpergrösse mal körpergrösse und das ergebniss wäre dann: Körpergrösse² juhu!! nun mache ich: Körpergrösse² : Gewicht = BMI

also nochmal klartext: BMI = Körpergewicht : (Körpergröße in m²)
Die Enheit des BMI ist demnach kg/m²

soweit komme ich:

BlitzBasic: [AUSKLAPPEN]
;Das Ist ein Prog. zum berechnen des BodyMassIndex von Falk5T
;-------------------------------------------------------------

Print \"Hallo und WIlkommen zum BMI Berechner\"
Print \"Geben sie ihr Gewicht in Kg an!\"
Gewicht = Input (\":\")
Print \"Geben sie ihre Größe in Metern an!\"
Groesse = Input (\":\")
Quadrberech = Groesse * Groesse
BMIberechnung = Gewicht / Quadrberech
Print \"Ihr BMI =\"
Print BMIberechnung
WaitKey
End


probiert es mal aus... da wedet ihr feststellen, das ehr eine total falsche ussage macht, ich denke das er die körpergrösse² falsch berechnet...warum weis ich nicht Embarassed Sad Surprised Exclamation Mad

Dreiser

BeitragSa, Dez 10, 2005 13:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

Du arbeitest in deinem Programm mit Integer-Variabeln (Ganzzahl). Du brauchst aber Variabeln, die mit Kommastellen umgehen können. Diese Variabeln nennt man float, und sie werden mit einem # gekennzeichnet (z. B. Groesse# oder Gewicht#).

Wenn du deine Variabeln änderst, funktioniert das Programm.
 

Rubber

BeitragSa, Dez 10, 2005 23:09
Antworten mit Zitat
Benutzer-Profile anzeigen
jap...

das is das problem...

bei integern lässt er die komma Zahlen weg oder runded... (weiß ich nicht genau...)

mfg
Rubber
 

Falk5T

BeitragSa, Dez 10, 2005 23:56
Antworten mit Zitat
Benutzer-Profile anzeigen
hehe dankeschön, dieses falsche prog könnte man in ein tut einbauen, so als endprüfung oder so für die varis... Confused
 

Falk5T

BeitragSo, Dez 11, 2005 1:46
Antworten mit Zitat
Benutzer-Profile anzeigen
so jetzt will ich mein prog erweitern, nun sagt der aber andauernd
,,expekting-end-of-line,,

so ein scheiss!!! was will der von mir
meiner meinung nach ist doch alles in ordnung....

BlitzBasic: [AUSKLAPPEN]
;Das Ist ein Prog. zum berechnen des BodyMassIndex von Falk5T
;-------------------------------------------------------------

Print \"Hallo und Wilkommen zum BMI Berechner\" ;Begrüssung
Print \"Bitte benutzen sie .Punkt. als Komma\" ;Hinweis
Print \"Sind sie Weiblich?\" ;Geschlechtsabfrage
gesch = Input (\":\") ;Eingabe/Antwort der Geschlechtsabfrage
Print \"Geben sie nun ihr Gewicht in Kg an!\" ;Gewichtsabfrage
Gewicht# = Input (\":\") ;Eingabe/Antwort der Gewichtsabfrage
Print \"Geben sie ihre Größe in Metern an!\" ;Grössenabfrage
Groesse# = Input (\":\") ;Eingabe/Antwort der Grössenabfrage
Quadrberech# = Groesse# * Groesse# ;Berechnet die Körpergrösse²
BMIberechnung# = Gewicht# / Quadrberech# ;Berechnet den BMI
Print BMIberechnung# ;zeigt den BMI an

If gesch = ja Then Gosub weiblich ;Entscheidet wo er weiterprüfen soll
If gesch = nein Then Gosub männlich EndIf


.männlich ;Klassifikationsfeststellung für Männer
If BMIberechnung# < 20 Then Print \"Sie haben Untergewicht!\"
If BMIberechnung# < 25 > 20 Then Print \"Sie haben Normalgewicht!\"
If BMIberechnung# < 30 > 25 Then Print \"Sie haben Übergewicht!\"
If BMIberechnung# < 40 > 30 Then Print \"Sie haben Adipositas!\"
If BMIberechnung# > 40 Then Print \"Sie haben massive Adipositas!\" EndIf


.weiblich ;Klassifikationsfeststellung für Frauen
If BMIberechnung# < 19 Then Print \"Sie haben Untergewicht!\"
If BMIberechnung# < 24 > 19 Then Print \"Sie haben Normalgewicht!\"
If BMIberechnung# < 30 > 24 Then Print \"Sie haben Übergewicht!\"
If BMIberechnung# < 40 > 30 Then Print \"Sie haben Adipositas!\"
If BMIberechnung# > 40 Then Print \"Sie haben massive Adipositas!\" EndIf
WaitKey ;Wartet bis bel. Taste gedrückt
End ;Beendet das Programm


Könnt ihr mir weiterhelfen??

Dreiser

BeitragSo, Dez 11, 2005 12:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Du hast mehrere Fehler in deinem Programm.

expecting-end-of-line”. Nach der Fehlermeldung spring der Cursor zum ä von männlich. Du solltest ä, ü, ö, etc. nicht benutzen.

Gosub. Gosub verlangt nach einem Return. Nach deinen if-Abfragen bei .maennlich und .weiblich muss je ein Return folgen. Ausserdem musst du diesen Teil vom Code hinter den End-Befehl kopieren. Als kleine Übung könntest du Gosub in function umwandeln. Am function-Befehl kommst du früher oder später nicht vorbei.

If BMIberechnung# < 25 > 20 Then Print "Sie haben Normalgewicht!"
NEU: If BMIberechnung# < 25 And BMIberechnung# > 20 Then Print "Sie haben Normalgewicht!"
Deine EndIf machen in deinem Beispiel keinen Sinn. Lösche Sie. Schau dir aber einmal den if-Befehl genauer an. (If, ElseIf, Else, EndIf)

Deine weiblich/männlich Abfrage ist falsch. Schau es dir noch mal an.

Diese Fehler sind mir bis jetzt aufgefallen.
 

Rubber

BeitragSo, Dez 11, 2005 22:01
Antworten mit Zitat
Benutzer-Profile anzeigen
ja..

der über mir hat recht... (würd ichn sagen)

mfg
Rubber

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group