Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 241057 (2493)
  Suchen
 Zurück zur Übersicht
 AutorThema: Potenzrechnung fehlerhaft?
Martin Heller
Datum:01.07.02 17:17 Antwortenals Email verschicken (martin.heller@technopolis.de) 


MessageBox @Str$(3^3), "", 0

Hi,
kann mir jemand erklären wieso in der MessageBox 27 angezeigt wird, obwohl 3³ doch eigentlich 9 sind?

Martin Heller




Stefan Schnell
Datum:01.07.02 17:44 Antwortenals Email verschicken (mail@stschnell.de) 


Hallo Martin,

3 ^ 2 = 3 * 3 = 9

3 ^ 3 = 3 * 3 * 3 = 27

Profan potenziert schon richtig ;-)

Tschüss
Stefan



Martin Heller
Datum:01.07.02 17:57 Antwortenals Email verschicken (martin.heller@technopolis.de) 


Okay, war mein Rechenfehler...danke. :)

Martin Heller




Martin Heller
Datum:03.07.02 15:47 Antwortenals Email verschicken (martin.heller@technopolis.de) 


Jetzt hab ich leider doch noch einen Fehler in der Potenzrechnung gefunden:
65 ^ 6 = 0
nach dem Windowstaschenrechner ist das Ergebniss aber:
75418890625

Kann das jemand erklären und eine Lösung vorschlagen?
Martin Heller


Rolf Koch
Datum:03.07.02 17:09 Antwortenals Email verschicken (webmaster@rokosoft.de) 


Tja, bei mir wird richtig gerechnet und es kommt genau das heraus
5418890625!
Habs mit Deinem Beispiel probiert.
MessageBox @Str$(65^6), "", 0

Wie haste dann gerechnet? Irgendeine Variable benutzt?
Z.B. eine Variable, welche garkeine Rechenoperationen
durchführen kann? Z.B: X$ o.ä?

Rolf


Martin Heller
Datum:04.07.02 06:59 Antwortenals Email verschicken (martin.heller@technopolis.de) 


Hi!
Ich hab den Fehler schon fast gefunden:
MessageBox @Str$(65 ^ 6), "", 0

wird bei mir auch ganz normal das Ergebniss angezeigt.

Aber da wird mir 0 angezeigt:
declare num&
num& = 65 ^ 6
MessageBox @Str$(num&), "", 0

Das Problem kann man warscheinlich so erklären:
LongInt dürfen nur zahlen kleiner als 2 Millarden beinhalten.

Martin Heller


Rolf Koch
Datum:04.07.02 13:17 Antwortenals Email verschicken (webmaster@rokosoft.de) 


Genau hast recht:
declare num!
num! = 65 ^ 6
MessageBox @Str$(num!), "", 0
So haut es hin :)
Rolf


Martin Heller
Datum: 04.07.02 13:20 Antwortenals Email verschicken (martin.heller@technopolis.de) 


Danke, ich hab es bissher immer in Strings umgewandelt, aber so ist es besser.

Martin


 Zurück zur Übersicht