hilfe bei mathe aufgaben
-
hallo!
ich lerne gerade programmieren mit c++ im zuge meines studiums (umweltsystemwissenschaften, schwerpunkt physik).
allerdings fange ich dabei bei 0 an, da ich davor noch überhaupt keine erfahrungen damit gemacht habe.nach den ersten erklärungen haben wir schon gleich (meiner meinung nach) sehr schwere aufgaben bekommen, in die ich auch schon viel zeit investiert habe. und ja, ich mache erste erfolge. eine aufgabe schaff ich allerdings gar nicht, und zwar folgendes:
"Berechnen Sie mit Hilfe der Formeln
sin(x) = x^1/1! − x^3/3! + x^5/5! − x7/7! + x^9/9! − x^11/11! + . . .
cos(x) = 1 − x^2/2! + x^4/4! − x^6/6! + x^8/8! − x^10/10! + . . .den Sinus und Cosinus. Die Zahl n der Glieder der Reihe und x sollen uber
die Tastatur eingelesen werden. Vergleichen Sie mit den exakten Werten
sin(x) und cos(x)."könnt mir hier jemand bitte lösungen oder ansätze geben.
vielen dank.
-
mach ne schleife
-
ja gut, das ist mir schon klar.
aber was mir probleme macht, ist das die potenz und die fakultät im nenner immer um 2 wächst. und außerdem ändert sich jedes mal das vorzeichen, womit ich auch nicht klar komme.
-
-
Mach einfach eine Schleife, die immer 2 zur Zählervariablen addiert statt eins for(int i=...;...;i+=2)
Falls das dein Problem gewesen sein sollte. Es lohnt sich, den wert von x^n und den von n! abzuspeichern, da du dir so rechenschritte ersparen kannst.
Das Zeichen kannst du einfach in einer separaten Variablen abspeichern die du abwechselnd auf 1 und -1 setzt.Ich denke die Tipps sollten mehr als ausreichen, wenn nicht post deine Versuche.
-
Dir ist schon klar, dass man die Reihenentwicklung des Cosinus im Allgemeinen als
cos(x) = \sum(i=0...oo) (-1)^i x^{2i}/i!
schreibt?
-