hilfe blitz rechnet floats falsch
Übersicht

![]() |
DottakopfBetreff: hilfe blitz rechnet floats falsch |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo blitzer!
ich sitzt grad mit solchen augen vor meim monitor --> ![]() Weis der geier warum, aber Blitz rechnet gerade keine Floats Code: [AUSKLAPPEN] Global c# c# = 5 / 4 Print c# Für C kommt der wert 1.0 raus! BB hab ich schon neu gestartet. Bin ich zu doof oder kennt einer den Bug ? Gruß Dottakopf [/code] |
||
Rechtschreibfehler gelten der allgemeinen Belustigung! |
![]() |
Blackside |
![]() Antworten mit Zitat ![]() |
---|---|---|
änder mal
Code: [AUSKLAPPEN] c# = 5 / 4
in: Code: [AUSKLAPPEN] c# = 5.0 / 4.0
![]() ![]() |
||
Hier sollte eigentlich eine Signatur stehen! |
![]() |
Dottakopf |
![]() Antworten mit Zitat ![]() |
---|---|---|
jo so wie du es geschrieben hast gehts.
aber sowas muss doch gehen !!! Code: [AUSKLAPPEN] Global y# a = 12 b = 10 y# = a / b Print y bei mir kommt aber ne glatte 1.0 raus. Sehr komisch Danke für deine schnelle antwort (achja pc hab ich auch schon neu gestartet) Gruß Dottakopf |
||
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit Variablen macht man das über den Befehl Float![]() Code: [AUSKLAPPEN] y# = a/Float( b )
|
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
Smily |
![]() Antworten mit Zitat ![]() |
---|---|---|
Intern passiert folgendes:
c = a/b wird zu: -> nehme a in den speicher -> nehme b in den speicher -> teile die zahlen im speicher durcheinander (doof formuliert, mir fällt nix besseres ein) -> weise das ergebnis c zu. bei schritt 3 weis der Computer noch garnicht, ob der das ergebniss einem int, einem float oder irgendeinem anderen datentyp geben muss. Deswegen wird als zieldatentyp immer der genaueste datentyp genutzt, der in der rechnung vorkommt. Deswegen wird ein int/int immer zu int. |
||
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets "Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!" stummi.org |
![]() |
Dottakopf |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ahh Ok. Auch wieder was gelernt...
Dachte das wenn ich mit Code: [AUSKLAPPEN] y# = .... beginne, dass das für bb klar ist das er hier Floats dividieren muss. Danke für euer verständniss, frage war ja recht nooblike. Gruß Dottakopf |
||
Rechtschreibfehler gelten der allgemeinen Belustigung! |
![]() |
hazumu-kun |
![]() Antworten mit Zitat ![]() |
---|---|---|
Genau dieses Problem hab ich regelmäßig.
Z.B. wenn in einer For-Schleife das i mit in Berechnungen einfließt, in denen Float rauskommen sollte, aber sonst nur Int verwendet wird. Bisher hab ich immer die Laufvariable als Float deklariert. Danke für den Tipp mit Float#() |
||
Warum kann es keine omnipotente Macht geben?
Weil diese omnipotente Macht in der Lage sein müsste, einen so schweren Stein zu schaffen, dass sie ihn nicht heben kann -> nicht omnipotent |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schon allein das es in vielen anderen Programmiersprachen zu Fehler kommt, wenn man verschiedene Variablentypen miteinander verrechnet, würde ich generell - auch wegen der Geschwindigkeit - immer versuchen gleiche Variablentypen zu verrechnen.
Dann wäre dein Beispiel zu folgendem: Code: [AUSKLAPPEN] Global y#
Local a# = 12 Local b# = 10 y = a / b Print y WaitKey Das Local ![]() |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group