C-Programm Informatik 1
-
@Lordkurd lteration meinte ich *
-
@Lordkurd Wenn du den Code mit der Maus markierst und dann auf das Symbol </> über dem Edit-Fenster klickst, bleibt das Format (Einrückung) vom Code erhalten.
Dann kann man auch etwas erkennen. Das geht auch noch nachträglich - auf die drei senkrechten Punkte rechts unter dem Beitrag klicken.
-
@DirkB Leider nicht ganz verstanden
hier ist das Eingabe Feld vielleicht hilft dir das mehr
https://ibb.co/P4cg9K2
-
@Lordkurd sagte in C-Programm Informatik 1:
@DirkB Leider nicht ganz verstanden
hier ist das Eingabe Feld vielleicht hilft dir das mehr
https://ibb.co/P4cg9K2Da sehe ich nur den halben Code.
Zudem sind, da hier die Mark-Down-Formatierung benutzt wird, keine * Zeichen sichtbar, die direkt an Wörtern stehen.Das soll etwa so aussehen:
int main (void) { int anzahl_einlese; int einlese_ziel; int iteration; int laufindex_o; int vorzeichen; int matrikelnummer; int maxanzahl; double x_hoch_o; double letzte_zahl; double ergebniss_letzte_zahl; double akte_x; double genauigkeit; double gleitkommazahl; double log_ergebniss; matrikelnummer = 654321; maxanzahl = matrikelnummer/10000; genauigkeit = 1.0 /matrikelnummer;
In der Zeile unter deinem Beitrag steht "Antworten" "Zitieren" und ganz rechts sind drei Punkte.
Da klickst du drauf und wählst bearbeiten aus.
Dann marlierst du deinen Code mit der Maus und klickst auf das </> Symbol neben der Auswahlbox mit C++.
Den Erfolg kannst du rechts im Vorschaufenster bewundern.
Allerdings ist es besser, du kopierst deinen ganzen Code nochmal rein.
-
Dieser Beitrag wurde gelöscht!
-
@Lordkurd sagte in C-Programm Informatik 1:
Das ist mein Programm und ich soll bei der Eingabe erst 11 eingeben und dann diese Zahlen
1
0
-1
0.1
7.389056
etc.
und bei die illeteration soll immer letzten 4 Zahlen der Martikelnummer rauskommen also in diesem Fall 4321 leider kommen bei mir andere Zahlen raus und bei 0 und -1 kommt der Fehler rausDie Berechneten Werte in deinem Konsolenfenster stimmen doch aber.
Der Logarithmus von 1 ist 0,
Für 0 und negative Werte gilt der nicht, der Fehler kommt vom folgendem Codeif(gleitkommazahl<=0){ printf("ln(%lf)=Fehler\n",gleitkommazahl); }
Der Logarithmus von 0,1 ist -2,302585.
Bei 65 (oder 64) iterationsstufen (die ersten beiden Ziffern der Matrikelnummer) ist das ok.
-
Dieser Beitrag wurde gelöscht!
-
@Lordkurd sagte in C-Programm Informatik 1:
aber die iteration sollte immer gleich sein deswegen wollte ich wissen wo mein fehler liegt
Da hast du evtl etwas falsch verstanden.
Du gibst doch die Genauigkeit vor. Wenn die erreicht ist, bricht die Schleife ab.
Bei 1 ist es sehr einfach. Da ist der Logarithmus (egal zu welcher Basis) immer 0.
Wollltest du für maxanzahl evtl den Modulo-Operator benutzen?
Da würdest du an die letzten 4 Stellen der Matrikelnummer kommen.
-
@DirkB Ich denke schon das wir den Modulo -operator benutzen sollen weil es sollen ja immer die letzten 4 Zahlen der Martikelnummer rauskommen
Zitat aus der aufgabe"
die genaugiekti mit 1.0/654321 ≈ 1,5283 ⋅ 10!! festgelegt werden. Die vorgegebene
Genauigkeit ist erreicht, wenn der Absolutbetrag des zuletzt hinzugefügten
Summanden der Reihe kleiner als der Zahlenwert für die Genauigkeit ist.
Die maximale Anzahl der Berechnungsschritte soll Ihrer Matrikelnummer Modulo
10000 sein. Wenn Ihre Matrikelnummer 654321 wäre dürfte die Schleife nicht mehr
als 4321 Berechnungsschritte durchführen."
-
@Lordkurd sagte in C-Programm Informatik 1:
@DirkB Ich denke schon das wir den Modulo -operator benutzen sollen weil es sollen ja immer die letzten 4 Zahlen der Martikelnummer rauskommen
Hast du aber nicht. Da steht
/ 10000
und nicht% 10000
-
Dieser Beitrag wurde gelöscht!
-
@Lordkurd Es dürfen nicht mehr als 4321 Iterationen sein. Weniger geht.
-
@DirkB Also ist meine Aufgabe richtig ?
-
Ich weiß nicht, ob die Genauikeit passt, denn was bedeuten die !! (etwa -6)
@Lordkurd sagte in C-Programm Informatik 1:
die genaugiekti mit 1.0/654321 ≈ 1,5283 ⋅ 10!! festgelegt werden.
Sonst stimmt ja das Ergebnis.
-
@DirkB Dirk eine letzte Bitte das Programm so wie es da steht kannst du mir eine Zusammenfassung schreiben weil ich müsste das auch morgen erklären und bin mir einigen stelllen unsicher
Danke nochmal für deine bemühung hast mir weiter geholfen
-
@Lordkurd sagte in C-Programm Informatik 1:
@DirkB Also ist meine Aufgabe richtig ?
Die Variablennamen sind etwas wirr.
Die Struktur geht etwas durch die Fehlerabfrage bei der Eingabe verloren.
Die eigentliche Berechnung als Funktion (etwamy_ln()
) wäre hübsch gewesen.Und natürlich auch Kommentrare. Die werden die in zwei Wochen auch helfen.
-
@Lordkurd sagte in C-Programm Informatik 1:
Dirk eine letzte Bitte das Programm so wie es da steht kannst du mir eine Zusammenfassung schreiben weil ich müsste das auch morgen erklären und bin mir einigen stelllen unsicher
Sorry, aber ich habe heute schon mehr Hausaufgaben gemacht als ich sollte.
Füge noch Kommentare ein, dann weißt du was du machen wolltest.Was da berechnet wird steht unter https://de.wikipedia.org/wiki/Logarithmus#Als_Potenzreihe