Potenzproblem

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Kryan

Betreff: Potenzproblem

BeitragSo, Sep 03, 2006 18:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

warum ergibt

byte3%=(65535 / (256)) Mod 256

255

und

byte3%=(65535 / (256^1)) Mod 256

256??? Ich versteh das einfach nicht, da ^1 ja eigentlich dasselbe ist, wie wenn man die Zahl stehen lassen würde?!

Naja, trotzdem vielen dank Smile
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!

PowerProgrammer

BeitragSo, Sep 03, 2006 18:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist komisch.
Code: [AUSKLAPPEN]
Print 256
Print 256^1

Da ist der einzige Unterschied, das die 2. Zahl ein Float ist...

Das wirds wohl sein....
www.xairro.com Alles für Webmaster und Programmierer! Es gibt mehr als bloß einen Counter!

Justus

BeitragSo, Sep 03, 2006 18:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Also da hättest du einfach Google benutzen können, schließlich bist du nicht der erste mit dem Problem.

Ich hab dir mal ein Tutorial rausgesucht.

*KLICK*

BladeRunner

Moderator

BeitragSo, Sep 03, 2006 19:30
Antworten mit Zitat
Benutzer-Profile anzeigen
*gg*

Zum Problem:
Es scheint wirklich an einem unsauberen cast durch BB zu liegen, da die einzelnen Rechenschritte einwandfrei funzen. Wohl die Ungenauigkeit von Floats.
Das Problem läßt sich durch ein int() jedoch beheben:
Code: [AUSKLAPPEN]
byte3% = int(65535/(256^1)) mod 256


Edit: was für eine Wandlungsschwäche spricht ist auch die Tatsache dass die zerlegte Version (da in % gecastet) funzt:
Code: [AUSKLAPPEN]
byte3% = (65535/(256^1))
byte3 = byte3 mod 256


Wohl ein kleiner Bug von mod dass es da 256 als Rest ausspuckt.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Kryan

BeitragMo, Sep 04, 2006 16:07
Antworten mit Zitat
Benutzer-Profile anzeigen
ok, danke, hab zB 256^2 nun einfach durch 65536 ersetzt und es klappt

@Justus: was ist denn das für n kranker Link?? Sry, dass ich den nicht selbst gefunden hab ("better way to get erections"...) Very Happy
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!

BladeRunner

Moderator

BeitragMo, Sep 04, 2006 16:13
Antworten mit Zitat
Benutzer-Profile anzeigen
65535 != 256^2.
Dann war wohl dein Ausgangscode fehlerhaft Wink
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Kryan

BeitragMo, Sep 04, 2006 16:18
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habe 65536 geschrieben Very Happy

ist alles richtig, blady Very Happy
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!

BladeRunner

Moderator

Betreff: Re: Potenzproblem

BeitragMo, Sep 04, 2006 17:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Kryan hat Folgendes geschrieben:
Hallo,

warum ergibt

byte3%=(65535 / (256)) Mod 256

255

und

byte3%=(65535 / (256^1)) Mod 256

256??? Ich versteh das einfach nicht, da ^1 ja eigentlich dasselbe ist, wie wenn man die Zahl stehen lassen würde?!

Naja, trotzdem vielen dank Smile

Rolling Eyes
Bei mir ist alles gut, nur deine Augen scheinen fehlerhaft Wink
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Kryan

BeitragMo, Sep 04, 2006 17:25
Antworten mit Zitat
Benutzer-Profile anzeigen
aso, ich dachte du meinst...
Zitat:
ok, danke, hab zB 256^2 nun einfach durch 65536 ersetzt und es klappt


Aber im ersten Post ist auch alles richtig Smile

Mein kleines Programmchen soll nämlich einen Int in vier Bytes unterteilen...und bei 65535 kommen folgende vier Bytes raus: 0,0,255,255
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!
 

Ava

Gast

BeitragMo, Sep 04, 2006 17:38
Antworten mit Zitat
Kryan hat Folgendes geschrieben:
Mein kleines Programmchen soll nämlich einen Int in vier Bytes unterteilen


Und dafür wendest Du solche Berechnungen an? auf Binärebene ist das doch sehr viel schneller und einfacher zu lösen.... Rolling Eyes

[ edit / OT ]
- da ich in den Trash nicht reinschreiben darf, melde ich mich hier nochmal zu Wort. Ich konnts - und wollts - mir halt einfach nicht verkneifen. Das es Spam ist, war mir in dem Moment auch bewusst. Somit habsch auch kein Problem, dass es im Trash geladet ist. Allerdings lass ich mir ein "Abkupfern" nicht unterstellen - Justus Link hatte ich nie angeklickt... *so blupp* ...und nu steinige ich mich selber für meinen Ausrutscher. Wink
  • Zuletzt bearbeitet von Ava am Mo, Sep 04, 2006 17:44, insgesamt einmal bearbeitet

Kryan

BeitragMo, Sep 04, 2006 17:42
Antworten mit Zitat
Benutzer-Profile anzeigen
stimmt...naja ist ja eigentlich auch egal Very Happy
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group