Kommazahlen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Kommazahlen

Beitrag von X360 Andy »

Schönen Nachmittag zusammen

Wie ist es möglich eine Zahl als Kommazahl zu schreiben in PB ?
Für mein Spiel brauche ich die Zahl 0,7 damit es "Perfekt" läuft.
Aber meine versuche diese Zahl einzubauen scheitern :oops:

Code: Alles auswählen

testX - 0,7
//geht nicht

Code: Alles auswählen

testX - 0.7
//passiert nichts

Code: Alles auswählen

testX - (14/7)
//passiert nichts


Jemand en tipp ?[/code]
Benutzeravatar
KeyKon
Beiträge: 1412
Registriert: 10.09.2004 20:51
Computerausstattung: Laptop: i5 2,8 Ghz, 16GB DDR3 RAM, GeForce 555GT 2GB VRAM
PC: i7 4,3 Ghz, 32GB DDR3 RAM, GeForce 680 GTX 4GB VRAM
Win10 x64 Home/Prof
PB 5.30 (64bit)
Wohnort: Ansbach
Kontaktdaten:

Beitrag von KeyKon »

Richtig ist auf jeden Fall 0.7
Bist du sicher das deine Variable auch vom Typ Float bzw Double is?
14/7 is übrigens 2...
(\/) (°,,,°) (\/)
sibru
Beiträge: 265
Registriert: 15.09.2004 18:11
Wohnort: hamburg

Beitrag von sibru »

DatenTyp für TestX vergessen ?

Code: Alles auswählen

testX.d - 0.7
Debug testX
Gruss SiBru
Bild Bild
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

sibru hat geschrieben:DatenTyp für TestX vergessen ?

Code: Alles auswählen

testX.d - 0.7
Debug testX
Gruss SiBru
Wieder was gelernt , dachte weil PB das ja seit 4.20 von alleine macht ist das nicht wichtig .* hinterzusetzten :oops:
KeyKon hat geschrieben:Richtig ist auf jeden Fall 0.7
Bist du sicher das deine Variable auch vom Typ Float bzw Double is?
14/7 is übrigens 2...
Ups meinte 7/14 :lol: aber das wäre ja auch 0,5 :lol:
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> dachte weil PB das ja seit 4.20 von alleine macht ist das nicht wichtig .* hinterzusetzten

was macht PB von alleine? :?

der standard-typ ist Long bzw. seit 4.3 Integer.
wenn du den Typ nicht definierst, richtest du also eine ganzzahl-variable ein,
und die hat nunmal keine Nachkommastellen.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
KeyKon
Beiträge: 1412
Registriert: 10.09.2004 20:51
Computerausstattung: Laptop: i5 2,8 Ghz, 16GB DDR3 RAM, GeForce 555GT 2GB VRAM
PC: i7 4,3 Ghz, 32GB DDR3 RAM, GeForce 680 GTX 4GB VRAM
Win10 x64 Home/Prof
PB 5.30 (64bit)
Wohnort: Ansbach
Kontaktdaten:

Beitrag von KeyKon »

Naja, Variablen ohne genauere Definition hat PB schon immer als Long behandelt...
7/10 wäre übrigens 0.7 gewesen :lol:
(\/) (°,,,°) (\/)
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

btw:

wenn es um eine Multiplikation geht, kann man das auch mit Ganzzahligen Variablen machen, indem man den Bruch auflöst:

Code: Alles auswählen

a = 1000

b = a * 7 / 10

Debug b
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
X360 Andy
Beiträge: 1206
Registriert: 11.05.2008 00:22
Wohnort: Bodensee
Kontaktdaten:

Beitrag von X360 Andy »

Kaeru Gaman hat geschrieben:> dachte weil PB das ja seit 4.20 von alleine macht ist das nicht wichtig .* hinterzusetzten

was macht PB von alleine? :?

der standard-typ ist Long bzw. seit 4.3 Integer.
wenn du den Typ nicht definierst, richtest du also eine ganzzahl-variable ein,
und die hat nunmal keine Nachkommastellen.
Durch Fehler lernt man :allright:

Wenn wir grad beim Thema Mathe sind ....

Kann ich sowas in PB rechnen ?
Bsp.

(2+2X)²

Ohne dafür ein extra Prog. zu schreiben.
Weil mein Taschenrechner kann es nicht (<- Bsp)
sibru
Beiträge: 265
Registriert: 15.09.2004 18:11
Wohnort: hamburg

Beitrag von sibru »

schau mal im CodeArchiv nach "Eval"...
Bild Bild
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Übrigens braucht man nicht immer gleich double zu verwenden, in den meisten Fällen reicht auch float aus. Und das ist auf einem 32-bit-System ca. 3x so schnell.
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Antworten