Ähm NotANumber sollte nicht kommen. Du fängst das ja mit der if Bedingung ab, und setzt den Rückgabewert in diesem Fall einfach auf 1. x^0 ist ja immer 1, also nur vom Exponenten abhängig. Da sollte es normal keine Probleme geben.
Na dann ist mir so einiges klar......
Wie können die euch so ne Aufgabe geben, ohne das ihr Analysis hatte
Da ist es ja auch kein Wunder, das du nicht vestehst was du da machst.
Also, dann kurz ein paar Erklärungen.
Das Epsilon nicht was, wo du schaust, ob das Ergebnis > oder kleiner ist.
Du machst ja eine Reihenentwicklung einer trigonometrischen Funktion. Ich hoffe das weißt du. Wenn nicht, schau dir bitte die Erklärung von wikipedia zur Reihenentwicklung der sin-Funktion an.
Da du eine Reihenentwicklung einer Funktion machst, müsstest du eigentlich erst mal prüfen, ob diese Reihenentwicklung überhaupt gegen den gesuchten Wert konvergiert. Das haben Sie euch erspart, weil es allgemein bekannt ist, dass diese Reihendarstellung konvergiert (Wenn du nicht weißt was das beudetet, frag wiki, da ist das gut erklärt).
Da du weißt, dass die Reihenentwicklung konvergiert, kannst du Sie nun dazu nutzen, um den Wert auszurechnen.
Das machst du mit der Reihenentwicklung. Da die Reihe aber eine unendliche Reihe ist, und erst mit unendlich vielen Summanten dem Ergebnis entspricht, hast du NIE den richtigen Wert, sondern immer einen, der halt leicht abweicht. Du befindest dich in einer Epsilon-Umgebung um den richtigen Wert.
Du brauchst also eine Abbruchbedingung, sonst würdest du ewig! rechnen ohne ein Ergebnis zu bekommen!!! Das ist wichtig, das dir das klar ist!
Du hast sogar 2 Abbruchbedingungen.
Eine Harte: Die 12 Iterationen
und eine Weiche: die 0,00001 oder was der genaue Wert auch war.
Das ist jetzt nicht 100% sauber, aber so wird das Epsilon wohl bei euch aufgefasst werden (sonst mach es keinen Sinn), aber du musst nun bei jeder neuen Iteration, die Differenz von Schritt n und n-1 bilden, und schauen, ob das Ergebnis kleiner ist als Epsilon. Wenn es kleiner ist, dann kannst du wie bei der harten Abbruchbedingung einfach aufhören weiter zu rechnen und das Ergebnis ausgeben. Wenn das Ergebnis größer ist als Epsilon, dann rechne eine weitere Iteration und schau nochmals nach.
Ich hoffe das ist jetzt klar.
Und bitte bitte bitte schau in ein Analysis Buch, oder zumindest mal bei wikipedia dir die Sachen bischen genauer an.
PS: Was studierst du eigentlich und wo?