C++ Maschinengenauigkeit und Summen - Seite 2 |
| 14.11.2015, 21:35 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | ahso okay aber muss im zähler nicht x^k stehen?? warum lässt man das denn weg ?? |
|||||
|
|
||||||
| 14.11.2015, 21:40 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Das x^k berechne ich in Zeile 4. Wie die Fakultät auch mache ich das schrittweise, muss also nur mit x multiplizieren. |
|||||
| 14.11.2015, 21:48 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | bei mir kommt immer ein Fehler :/ double zähler=1, nenner=1; double sum =1; for (int k=1; k<100; k++) { zähler *=x; cout<<"Geben sie x ein"<<endl; cin>>x; nenner *=k; sum += zähler/nenner; cout<<"Die Summe ist "<<zähler/nenner<<endl; } return 0; } |
|||||
| 14.11.2015, 21:49 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Hast du für x eine Variable angelegt? Und das Einlesen von x muss vor, nicht in der Schleife erfolgen. Ach, Umlaute (äöüß) würde ich vermeiden. Und "ein Fehler" ist sehr ungenau. Ich bin für heute weg. |
|||||
| Anzeige | ||||||
|
|
||||||
| 14.11.2015, 21:53 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | using namespace std; int main(int argc, const char * argv[]) { double zähler=1, nenner=1; double sum =1; double x; cout<<"Geben sie x ein"<<endl; cin>>x; for (int k=1; k<100; k++) { zähler *=x; nenner *=k; sum += zähler/nenner; cout<<"Die Summe ist "<<zähler/nenner<<endl; } return 0; } hab ich es laufen lassen aber da steht (lldb) ?? und da ist jetzt ein breakpoint ?? |
|||||
| 15.11.2015, 07:18 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Du bist bei Fehlermeldungen immer sehr ungenau. So kann ich nichts damit anfangen. Du musst noch iostream einbinden. Das Endergebnis hast du nicht ausgegeben. Und Umlaute sind wie gesagt nicht empfehlenswert (der g++hat sie nicht akzeptiert)
|
|||||
| 15.11.2015, 07:46 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | Jaaa es hat geklappt Da ist wieder eine Liste gekommen, ist damit die Aufgabe zu Ende oder??? Danke das du mir geholfen hättest, hätte ich alleine nie geschafft |
|||||
| 15.11.2015, 07:53 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Du sollst dich noch um die Genauigkeit kümmern. Wir summieren die Werte bis k=100 auf, weniger würde auch reichen für die geforderten 10^-6 |
|||||
| 15.11.2015, 07:55 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | Aber das hängt doch davon ab was man für k einsetzt oder ?? |
|||||
| 15.11.2015, 07:59 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Das maximal nötige k wollen wir bestimmen. Und es hängt vom x ab. |
|||||
| 15.11.2015, 08:02 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | Man setzt also die x Werte (1,2,3) ein und schaut ob es ist 10^(-6) |
|||||
| 15.11.2015, 08:09 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Du musst sicherstellen, dass die Summe aller Terme für k=k_max+1 bis unendlich kleiner ist als die geforderte Genauigkeit von 10^-6. Du sollst eine Taylor - Mac Laurin Reihe bestimmen, das Restglied ist bekannt (siehe Formelsammlung). |
|||||
| 15.11.2015, 08:28 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | So?? |
|||||
| 15.11.2015, 08:34 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | Kann es nicht hochladen (F(0)(1)/0! +f(1)(2)/1! +f(2)(3)/2!) (x-1)^0 Wie programmiere ich das denn |
|||||
| 15.11.2015, 08:40 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Das Restglied ist einfach Das ist praktisch, da wir das sowieso ausrechnen müssen ist der Summe. |
|||||
| 15.11.2015, 08:47 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | using namespace std; int main(int argc, const char * argv[]) { double zähler=1, nenner=1; double sum =1; double x; cout<<"Geben sie x ein"<<endl; cin>>x; for (int k=1; k<100; k++) { zähler *=x; nenner *=k; sum += zähler/nenner; cout<<"Die Summe ist "<<zähler/nenner<<endl; double rg; rg *=+1+x/(k+1); } return 0; } |
|||||
| 15.11.2015, 08:47 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | oder das in der summe ersetzen ?? |
|||||
| 15.11.2015, 09:15 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Warum so kompliziert?
Man beachte das Abbruchkriterium in der Schleife, das nicht mehr auf den Wert von k prüft. Wenn du das für verschiedene Werte von x testest, wirst du feststellen, dass sich die Zahl der Additionen ändert. |
|||||
| 15.11.2015, 09:18 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | aber warum denn ausgerechnet 1e-6 ?? |
|||||
| 15.11.2015, 09:19 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | 1e-6 ist das selbe wie 0.000001, also |
|||||
| 15.11.2015, 09:21 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | das wusste ich ja garnicht ich dachte das wäre die eulersche zahl ://// ahso jetzt verstehe ich das auch. ist ja wirklich einfach |
|||||
| 15.11.2015, 09:22 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | steht das e immer für die 10 oder kann man auch 2 schreiben ?? |
|||||
| 15.11.2015, 09:26 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Das e (auch als großes E möglich) steht für Wenn du eine Zahl z.B: mit 2^7 multiplizieren willst, kannst du das mit x << 7 tun (nennt sich shiften, geht aber nur für Ganzzahlen). |
|||||
| 15.11.2015, 09:29 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | ahso ich merke grad das ich echt nichts weiß :/ |
|||||
| 15.11.2015, 09:32 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Ich mache das ja auch schon ein paar Jahre, während du neu angefangen hast. Da ist Unwissenheit ganz normal - alles andere sollte eher mir zu denken geben
|
|||||
| 15.11.2015, 09:37 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | danke wirklich
ich hab hier noch eine Aufgabe aber ich weiß nicht ob du dich damit auskennst das hat nämlich nichts mit programmieren zu tun, das hat mit der "Partialsummen der harmonischen Reihe??" zu tun |
|||||
| 15.11.2015, 09:39 | Auf diesen Beitrag antworten » | |||||
| eulerscheZahl | Habe ich schonmal gehört, da müsste ich die Aufgabe sehen, um sagen zu können, ob ich helfen kann (aber bitte einen neuen Thread erstellen). Alternativ kannst du auch im matheboard nachfragen. Ich bin jetzt erst mal Fußball spielen. |
|||||
| 15.11.2015, 09:43 | Auf diesen Beitrag antworten » | |||||
| Marcell99 | ok und danke nochmal
|
|||||
|
|
Verwandte Themen
| Die Beliebtesten » |
| Die Größten » |
| Die Neuesten » |
