c# Reihenentwicklung für kosinus?
Guten Mittag!
wir sollen für Info die reihenentwicklung für den Kosinus programmieren. mein problem ist es jetzt, dass ich (2k)! einfach nicht programmiert bekomme :(
um eine normale fakultät zu programmieren hab ich immer eine schleife nutzen können mit f=fxn mit f=1,n=1,n++;
kann mir vielleicht jemand helfen?
mfg Antieinhorn
3 Antworten
![](https://images.gutefrage.net/media/user/RBM1992/1485969344997_nmmslarge__17_0_185_185_f6ffa3dbb59d221dfc2c5a7119dc8be6.jpg?v=1485969345000)
Wenn ich das richtig verstehe, muss die Zahl, die für diese Aufgabe eingegeben werden soll, die Fakultät einer Zahl sein und es darf nur das Ergebnis einer Fakultät sein (z. B. 4! = 24).
Falls dem so ist, könntest du am Anfang des Programms eine generische Liste vom Typ int mit den Fakultäten aller Zahlen bis 2k (ich nehme an, du meinst damit 2.000) befüllen. Dafür nutzt du einfach wieder eine for-Schleife.
Wenn du dann die Eingabe überprüfst, gehst du mit foreach durch die generische Liste durch und prüfst, ob die Zahl vorhanden ist. Wenn nicht, muss eine neue Zahl eingegeben werden. Alternativ kannst du auch mit der Funktion List<T>.FindIndex(Predicate<T>) ermitteln, ob die Zahl in der Liste vorhanden ist. Das spart Rechenleistung. Und dann musst du nur prüfen, ob der Index == -1 ist. Falls ja, muss eine neue Zahl eingegeben werden.
![](https://images.gutefrage.net/media/user/RBM1992/1485969344997_nmmslarge__17_0_185_185_f6ffa3dbb59d221dfc2c5a7119dc8be6.jpg?v=1485969345000)
Demnach ist (2k)! also das Doppelte einer Zahl k und dann dessen Fakultät, ja? Wie z. B. k = 4, dann wäre (2k)! = 40320.
Oder wird die Fakultät verdoppelt? Das wäre z. B. k = 4 und (2k)! = 48.
So oder so, du kannst alle Ergebnisse in einer List<T> speichern und dann prüfen, ob die eingegebene Zahl darin enthalten ist.
![](https://images.gutefrage.net/media/user/Tannibi/1568018311030_nmmslarge__0_0_300_300_9a4334409e63f908baa4b0bff88a688f.jpg?v=1568018311000)
Du musst doch die natürlichen Zahlen bis 2k multipliziert kriegen.
Wo ist denn das Problem?
![](https://images.gutefrage.net/media/user/antieinhorn00/1410612563912_nmmslarge.jpg?v=1410612562000)
man darf nur 2!,4!,6! etc quasi nutzen aber ich weiss nicht wie ich die andern zahlen ausschließen soll
![](https://images.gutefrage.net/media/user/Tannibi/1568018311030_nmmslarge__0_0_300_300_9a4334409e63f908baa4b0bff88a688f.jpg?v=1568018311000)
![](https://images.gutefrage.net/media/user/antieinhorn00/1410612563912_nmmslarge.jpg?v=1410612562000)
bei der formel für die reihenentwicklung des cosinus gilt:
unten kannfolglich nicht zB 6 stehen sondern nur 6!.
![](https://images.gutefrage.net/media/user/antieinhorn00/1410612563912_nmmslarge.jpg?v=1410612562000)
ja gut das hat herzlich wenig geklappt mit der formel
http://mathenexus.zum.de/html/analysis/funktionen_winkel_weiteres/weiterfuehrendes/trigo_13.htm
hier etwas weiter unten ist die formel
![](https://images.gutefrage.net/media/user/antieinhorn00/1410612563912_nmmslarge.jpg?v=1410612562000)
Das ist die genaue Aufgabenstellung @RBM1992
![- (Computer, Schule, Mathematik)](https://images.gutefrage.net/media/fragen-antworten/bilder/297130365/0_big.png?v=1543259348000)
k ist eine variable die von 1 an heraufzählt ':)