Antwort
 
Themen-Optionen Thema durchsuchen
Alt 15.11.2005, 17:42 Nach oben    #1
Jay
Gast
 
Beiträge: n/a
Standard Wie viele Kommastellen hat eine Zahl?

Hallo!

Wir haben vor ca. 1 Monat mit Java (1. Klasse HTL) begonnen und den Auftrag bekommen ein Programm, das die Zahl PI bis auf 10 Kommastellen genau berechnet. Den Algo. für PI habe ich bereits implementiert allerdings weiß ich nicht wie man herausfinden kann wie viele Kommastellen eine Zahl hat!

Es darf keine Method aus irgendeinem Package verwendet werden, sondern die Berechnung muss rein mathematisch durchgeführt werden.

Mfg Fat Fony
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.11.2005, 17:53 Nach oben    #2
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.480
Standard

Sowas ähnliches haben wir mal im ersten Semester gemacht .. das war ein Trick. Bin mir aber nicht mehr ganz sicher, ob das die gleiche Aufgabe war.
Interessiert mich jetzt aber auch gerade mal .. *g* .. muss ich mal die "Einführung in die Mathematik"-Mitschrift durchgehen .. kann aber was dauern .. sind 58 Blätter, beidseitig beschrieben .


Oder du lässt im Algorythmus einfach einen Zähler mitlaufen .

Geändert von Ben (15.11.2005 um 17:55 Uhr).
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.11.2005, 17:59 Nach oben    #3
Jay
Gast
 
Beiträge: n/a
Standard

@Ben

Danke! Nein ich kann/darf im Algo. keinen Zähler mitlaufen lassen.

Mfg Fat Tony
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.11.2005, 18:23 Nach oben    #4
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.480
Standard

Du kannst überprüfen, ob die aktuelle Approximation 10 Nachkommastellen hat, indem du eine kleine Multiplikation durchführst.

Code:
x = Anzahl der Nachkommastellen

approx * 10^x muss eine ganze Zahl sein
approx * 10*(x-1)
Wenn ich jetzt nicht gerade was übersehe, sollte das eigentlich so funktionieren. Bei Java musst du da aber aufpassen. Ich weiß gerade gar nicht, ob das noch eine Zahl vom Typ "int" ist ..

Grüße Ben.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 16.11.2005, 21:38 Nach oben    #5
Jay
Gast
 
Beiträge: n/a
Standard

Geh bei mir irgendwie nicht:

Hab es so gemacht:

PHP-Code:
int perioden 10;

double approx 3.14159265;

approx *= Math.pow(10,perioden);
approx *= 10 * (perioden-1);

System.out.print(approx);

Ausgabe2.8274333850000006E11

Was mache ich falsch

 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.01.2006, 21:01 Nach oben    #6
Erfahrener Benutzer
 
Benutzerbild von karahead
 
Registriert seit: 23.11.2005
Ort: Stadtallendorf
Beiträge: 139
Standard

Moin, was für ein Zufall. Hab vor einem Monat sowas mal für den natürlichen Logarithmus implementiert, zwar in C++ aber Java und C++ sind ja von der Syntax her nicht so weit entfernt.

Naja ich hab das so gelöst, dass ich den letzten und den aktuellen Durchlauf miteinander verglichen habe und wenn die Differenz kleiner als 0.00000000009 (<= in deinem Fall auf die 10. Nachkommastelle) war habe ich die Schleife zur Berechnung unterbrochen.
Mir hat damals Double gereicht.

Hat bei mir super geklappt
Falls es unklar scheint, kann ich dir noch ein bischen sample Code anbieten.

Viel Glück auf jedenfall, mich hat es damals 3 schlaflose Nächte gekostet
__________________
Die Menschen wünschen sich Unsterblichkeit, aber wissen nichts anzufangen an einem verregneten Sonntag Nachmittag.
karahead ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 03.01.2006, 21:03 Nach oben    #7
Erfahrener Benutzer
 
Benutzerbild von karahead
 
Registriert seit: 23.11.2005
Ort: Stadtallendorf
Beiträge: 139
Standard

Zitat:
approx *= Math.pow(10,perioden);
Ich dachte, dass ihr keine externe Funktionen benutzen dürft
__________________
Die Menschen wünschen sich Unsterblichkeit, aber wissen nichts anzufangen an einem verregneten Sonntag Nachmittag.
karahead ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 08.01.2006, 21:03 Nach oben    #8
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Kann man doch prima selbst nachbauen :]
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Zahl aus String extrahieren Jan PHP-Programmierung 14 09.05.2007 18:22
Zahl erweitern julien PHP-Programmierung 6 03.08.2006 17:24
Kommastellen festlegen? Hannibal Allgemeine Java-Programmierung 4 22.11.2005 17:25
Errechnung der Zahl Pi in Java BoneCracker Allgemeine Java-Programmierung 6 15.02.2005 18:31
Falscheingaben abfangen Destiny1985 Allgemeine Java-Programmierung 2 24.12.2004 10:36


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:38 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44