AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Komische EInvalidOp

Ein Thema von janjan · begonnen am 26. Feb 2003 · letzter Beitrag vom 26. Feb 2003
Antwort Antwort
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#1

Komische EInvalidOp

  Alt 26. Feb 2003, 10:43
Ich bekomm in folgender Zeile eine EInvalidOp

if sqrt(sqr(FRadius-FPunkte[i].y)+sqr(FRadius-FPunkte[i].x)) > FRadius then nur leider weiß ich nicht warum

Aus der Delphi Hilfe:

Code:
Beschreibung

EInvalidOp wird ausgelöst, wenn der Prozessor eine nicht definierte Anweisung, eine unzulässige Operation oder einen Stack-Überlauf des Gleitkomma-Prozessors feststellt.

Laufzeitinformationen zu Exceptions werden in den von EExternal bereitgestellten Feldern gespeichert.

btw.
ist if sqrt(sqr(a)+sqr(b)) > c then eigentlich langsamer als if (sqr(a)+sqr(b)) > sqr(c) then ?
Die Wichtigkeit eines Postings im Forum ist reziprok zur Anzahl der enthaltenenen, kumulierten Ausrufungszeichen!!!
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Komische EInvalidOp

  Alt 26. Feb 2003, 10:52
Zitat von janjan:
ist if sqrt(sqr(a)+sqr(b)) > c then eigentlich langsamer als if (sqr(a)+sqr(b)) > sqr(c) then ?
Die Frage stellt sich nicht, da es zwei verschiedene Lösungen sind. Wenn C < 0 ist, dann wird die erste Lösung immer True ergeben, die zweite muss jedoch nicht zwangsläufig True ergeben. SQRT(X) für X>=0 ergibt immer einen Wert >= 0. X ist im obigen Falle immer >= 0 da, SQR(N) + SQR(M) immer >= 0, da SQR(A) >= 0.

Woher die EInvalidOp kommt, habe ich auch noch nicht entdeckt

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#3
  Alt 26. Feb 2003, 10:58
Angenommen C ist immer positiv, dann müssten beide Gleichungen identisch sein, oder?
Die Wichtigkeit eines Postings im Forum ist reziprok zur Anzahl der enthaltenenen, kumulierten Ausrufungszeichen!!!
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#4
  Alt 26. Feb 2003, 11:23
Zitat von janjan:
Angenommen C ist immer positiv, dann müssten beide Gleichungen identisch sein, oder?
Wenn wir dann noch rundungsfehler - welche bei SQRT im allg. höher sind als bei SQR ausschliessen können, dann ja. Logisch zumindest eindeutig ja, wenn C >= 0.
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 13:11 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