AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Quadratqurzel von 0: Fehlermeldung im BCB6
Thema durchsuchen
Ansicht
Themen-Optionen

Quadratqurzel von 0: Fehlermeldung im BCB6

Ein Thema von messie · begonnen am 1. Jun 2006 · letzter Beitrag vom 1. Jun 2006
Antwort Antwort
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#1

Quadratqurzel von 0: Fehlermeldung im BCB6

  Alt 1. Jun 2006, 17:44
Hallo,

ich berechne die Quadratwurzel eines Ausdrucks, der Null werden kann, eigentlich unproblematisch. Im BCB6 bekomme ich dafür eine Fehlermeldung:
Code:
ShowMessage(FloatToStr(pow(0,1/2)));
Meldung lautet: pow:domain error, was ich als unzulässige Basis interpretiere.
In Delphi geht dieselbe Berechnung problemlos. Beiden liegt eine identische Pascal-Routine zugrunde

Woran mag denn das liegen?

Grüße, Messie
  Mit Zitat antworten Zitat
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Quadratqurzel von 0: Fehlermeldung im BCB6

  Alt 1. Jun 2006, 18:23
Problem gelöst! BCB kann nicht eins durch zwei teilen wenn kein Punkt hinter der Zahl steht, deshalb ist der Ausdruck dann Null.
Besser ist
Code:
ShowMessage(FloatToStr(pow(0,1./2.)));
Mal geht es, mal nicht...

Grüße, Messie
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

Re: Quadratqurzel von 0: Fehlermeldung im BCB6

  Alt 1. Jun 2006, 21:53
Zitat von messie:
BCB kann nicht eins durch zwei teilen wenn kein Punkt hinter der Zahl steht, deshalb ist der Ausdruck dann Null.
BCB kann schon 1 durch 2 teilen, allerdings gibt es in C/C++ keine unterschiedlichen Operatoren für "/" und "div" - der Ergebnistyp von "x/y" ist der `größere´ Typ von x oder y. Daher kommt in C bei "1 / 2" dasselbe heraus als wenn du in Delphi "1 div 2" geschrieben hättest.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#4

Re: Quadratqurzel von 0: Fehlermeldung im BCB6

  Alt 1. Jun 2006, 22:02
Ja, aber warum geht es mal und mal nicht??? Ich hätte Verständnis für eine konsequente Umsetzung. Aber der Ausdruck wird immer korrekt berechnet, solange die Basis größer Null ist. Die hat aber eigentlich nix mit dem Exponenten zu tun um dessen Syntax wir hier diskutieren.

Grüße, Messie
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#5

Re: Quadratqurzel von 0: Fehlermeldung im BCB6

  Alt 1. Jun 2006, 22:04
Sqrt(-2) <- try this. Delphi/BCB hat nun mal keine komplexen Zahlen, nur Singles, Doubles und Extendeds.
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

Re: Quadratqurzel von 0: Fehlermeldung im BCB6

  Alt 1. Jun 2006, 22:05
Zitat von messie:
Ja, aber warum geht es mal und mal nicht??? Ich hätte Verständnis für eine konsequente Umsetzung. Aber der Ausdruck wird immer korrekt berechnet, solange die Basis größer Null ist. Die hat aber eigentlich nix mit dem Exponenten zu tun um dessen Syntax wir hier diskutieren.
Na ja - x^0 ist 1 für jedes x ungleich 0, aber 0^0 ist eben nicht definiert (-> Domain error = fehlerhafter Wertebereich eines Parameters).
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz