AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Wurzeln Wie schreibt man die

Ein Thema von Axxus · begonnen am 9. Nov 2006 · letzter Beitrag vom 10. Nov 2006
Antwort Antwort
Seite 3 von 5     123 45      
Axxus

Registriert seit: 3. Okt 2006
212 Beiträge
 
Turbo Delphi für Win32
 
#21

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 16:28
Hä es ist mir unbegreiflich aber du hast recht z1 ist wirklich negativ
Aber wieso wirde der wert negativ weenn x und y positiv sind das ergibt keinen sinn

Hat einer dafür ne erklärung
  Mit Zitat antworten Zitat
zahor

Registriert seit: 27. Jun 2006
Ort: im hintersten Winkel des RAMs
182 Beiträge
 
Delphi 2007 Professional
 
#22

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 17:02
na wenn du's positiv haben willst dann mach es mal mit der funktion (abs(x):
z := sqrt(abs(z1)); oder vielleicht geht es auch so, kann ja an delphi liegen:
z := sqrt(x*x + y*y); musste mal probieren.
Real Programmers always confuse Christmas and Halloween because Oct31 = Dec25. - Andrew Rutherford
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#23

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 17:04
Setz mal nen Breakpoint auf die sqrt-Zuweisung und drück Strg+F7 und lass dir die Werte von x, y und z1 ausgeben.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
zahor

Registriert seit: 27. Jun 2006
Ort: im hintersten Winkel des RAMs
182 Beiträge
 
Delphi 2007 Professional
 
#24

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 17:29
oder geh auf "überwachte ausdrücke" (Menüpunkt ansicht o.ä.)
und füge x, y, z1 hinzu
und mach's dann mit f7 immer weiter
Real Programmers always confuse Christmas and Halloween because Oct31 = Dec25. - Andrew Rutherford
  Mit Zitat antworten Zitat
Benutzerbild von stz
stz

Registriert seit: 8. Sep 2005
Ort: Neuendeich, Lübeck
277 Beiträge
 
Turbo Delphi für Win32
 
#25

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 17:36
Hallo zusammen,
36001600000000 = 30000*30000+40000*40000 = z1 ist deutlich außerhalb von -2147483648..2147483647 und das ist alles, was ein Integer verkraften kann. Wenn man die entsprechende Exception deaktiviert hat, überprüft Delphi nicht, ob sich alle Zahlen in einem Integer in diesem Bereich befinden. Gelangt man außerhalb dieses Bereiches, stehen im betroffenen Integer irgendwelche lustigen Zahlen. Meistens negative.

Gruß
Malte
Malte Schmitz
Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.

Entwickler des HTML-Editors MEdit (DP)
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#26

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 17:49
Da hast du Recht.

Einfach die Deklaration von z1 in Extended ändern und du kannst da Zahlen reinspeichern wie bekloppt.

Achja: Bei einer Multiplikation dürften sich positiv-negativ so ziemlich die Waage halten.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Axxus

Registriert seit: 3. Okt 2006
212 Beiträge
 
Turbo Delphi für Win32
 
#27

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 17:56
is das auch bei Extended so denn wenn ich z1 als solchen deklariere dann passiert es immer noch z1 is dann -179343562632 oder so^^
jedenfalls tritt der fehler bei Extended auch noch auf wenn das auch zu klein ist habt ihr dann nen typ der richtig große Zahlen verkraften kann ich will mit dem programm eig dem Benutzer ne unendlich große anzahl an pythagoräischen zahlen liefern können und wenn schon 1.000.000*1.000.000 + 1.000.000*1.000.000 = 2*10^12 ist was is es dann erst bei 1.000.000.000 ^^ ich frag mich wie lange der rechenr dafür bracueh wird^^ jedenfalls gibt es einen typ der groß genug ist
  Mit Zitat antworten Zitat
Benutzerbild von stz
stz

Registriert seit: 8. Sep 2005
Ort: Neuendeich, Lübeck
277 Beiträge
 
Turbo Delphi für Win32
 
#28

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 18:02
Laut OH kann Extended -3,6 x 10^4951 .. 1,1 x 10^4932 fassen bei einer Genauigkeit von 10 bis 20 Stellen. Das müsste also eigentlich langen...

Gruß
Malte
Malte Schmitz
Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.

Entwickler des HTML-Editors MEdit (DP)
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#29

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 18:05
Versuch erstmal, Int64 zu verwenden, der kann schonmal signifikant größere Zahlen verarbeiten, und noch größere Ganzzahlen werden sehr kompliziert ...
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#30

Re: Wurzeln Wie schreibt man die

  Alt 10. Nov 2006, 18:10
z1 := x * x + y * y; Wenn x und y als Integer-Variablen vereinbart werden, wird die rechte Seite immer einen Integer-Wert liefern - unabhängig vom Typ der Variablen z1.

Gruß Hawkeye
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


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 03:23 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