C Code zur Berechnung von sin(x) Erklärung?

3 Antworten

Von Experte tunik123 bestätigt

Haha ist eine etwas gewöhnungsbedürftige Verwendung der for Schleife aber im Endeffekt ists nichts anderes als ein Iteratives verfahren um den Sinus zu berechnen.

Hier wird im wesentlichen nur die Taylorentwicklung der Sinusfunktion solange durchgeführt bis die gewünschte Genauigkeit erreich wurde.

https://de.wikipedia.org/wiki/Taylorreihe


KarlRanseierIII  28.10.2021, 19:56
Haha ist eine etwas gewöhnungsbedürftige Verwendung der for Schleife

Wieso das denn?

0
PeterKremsner  28.10.2021, 19:59
@KarlRanseierIII

Weil die Abbruchbedingung keinen direkten Bezug zur Iterationsvariable hat.

Ich würde das eher als while Schleife schreiben.

0
PeterKremsner  28.10.2021, 20:13
@KarlRanseierIII

Natürlich ist es erlaubte Syntax allerdings in vielen Coding Guidlines nicht erlaubt und auch sonst teilweise nicht gern gesehen.

In den meisten Standards wird eben for rein für Iterationszwecke über Speicherbereiche oder dergleichen reserviert, während while die Standardschleifenstruktur ist und immer dann verwendet wird wenn eine Schleife solange durchgeführt werden soll bis eine (allgemeine) Wahr Falsch Frage falsch liefert.

0
tunik123  28.10.2021, 19:15
etwas gewöhnungsbedürftige Verwendung ...

Das läuft bei mir schon unter haarsträubend ;-)

1

nimm ein zettel und ein stifft und gehe die einzelnen schleifen durch .

da muss man nix erklären , du musst es einfach nur mal machen .

,,Wie" dieser Code mathematisch funktioniert, über eine Annäherung der Sinus Fkr. da gibt es einige.

Dazu mal auf Wikipedia nachschlagen


PeterKremsner  28.10.2021, 19:12

Mathematisch ists nur das Rechnen der Taylorreihe für den Sinus.

2