SS 2016 MATHEMATISCHES INSTITUT DER UNIVERSITÄT MÜNCHEN Dr. W. Spann Programmieren I für Mathematiker Aufgabe 2 Der Umfang eines Kreises mit Radius 12 kann durch die Umfänge un und Un des einbeschriebenen bzw. umbeschriebenen regulären 2n –Ecks (n = 2, 3, 4, . . .) eingeschlossen werden. Die Seitenlänge sn des einbeschriebenen regulären 2n –Ecks kann durch die folgende Rekursionsformel bestimmt werden: s √ p 2 1 − 1 − s2n s2 = , sn+1 = . 2 2 Daraus ergeben sich die Umfänge un = 2n sn 2n sn und Un = p . 1 − s2n Berechnen Sie für n = 2, 3, . . . Näherungen an π und geben Sie diese in einer Tabelle aus (siehe unten). Brechen Sie dabei die Iteration ab, wenn s2n kleiner als die Maschinengenauigkeit“ des ” verwendeten Gleitpunktdatentyps ist. Bei der Berechnung von 2n soll die Funktion ldexp und nicht die Funktion pow zum Einsatz kommen. (Anmerkung: ldexp(x,n) liefert x · 2n .) Führen Sie das obige Verfahren auch mit der mathematisch äquivalenten, aber numerisch stabileren Rekursionsformel sn sn+1 = q p 2(1 + 1 − s2n ) durch. Drucken Sie tabellarisch für beide Methoden n, die Eckenzahl, die Seitenlänge sn im Exponentialformat und die berechneten Umfänge in einem der Genauigkeit gut angepassten Festpunktformat (n = 2, 3, . . .). Achten Sie bei der Programmierung auf möglichst hohe Portabilität. Abzugeben sind der Programmtext und ein Ausdruck der Ergebnisse. Bitte senden Sie die Programmquelle zusätzlich per Email an die Adresse [email protected]. Geben Sie im Betreff Ihren Vornamen, Nachnamen und die Aufgabennummer an und benennen Sie die Programmquelle nach folgendem Schema: Vorname Nachname Aufgabennummer.cpp Abgabetermin: Donnerstag, 19.05.2016, 1400 Übungskasten vor der Bibliothek im 1. Stock
© Copyright 2024 ExpyDoc