C-Aufgabe. Ich peil nix :(
-
hi @all. wir sollen für informatik nen Proggi schreiben, mit dem man Zinsen berechnen kann. und ich komme überhaupt nicht klar. wir sollen mittels For-Schleife das ganze Tabbellrisch darstellen.
Aufgabe: Ein Kapital k wird n Jahre lang mit Zinseszins verzinst. Erstellt einen Algorithmus, der den Betrag ta-bellarisch ausgibt, der am Ende jeden Jahres auf dem Konto steht. Der Zinsfuß p, das Kapital k und die Anzahl der Jahre n sollen vor der Berechnung abgefragt werden.
Die Formel für die Berechnung lautet b=k*(1+p/100)^n (hoch n (jahreszahl)) nur ich kriegs ja nichma hinne das ganze für eine festgelegte jahreszahl zu coden. mein bisheriges ergebnis (nich lachen..^^):# include <stdio.h>
# include <ctype.h>int main()
{
int k, n, p, b, z, zz;
scanf("%d", &k);
scanf("%d", &n);
scanf("%d", &p);
z=1+p/100;
zz=zz;
b=kzz;
printf("%d", b);
return 0;
}hier soll einfac (z*z) für 2 jahre ausgrechnet werden. aber irgendwie klappts net. hach ich verzweifle noch mit meiner doofheit^^
pls helpcya
-
Hier mal meine kleine Lösung, du solltest allerdings für das Kapital und den
Zins double verwenden, da du mit Integer, je nach Startkapital durch das
abschneiden der Nachkommastellen keine Steigung des Kapitals hast.
Aber du kannst in meinem Beispiel sehen wie man es ganz einfach machen kann und
wie man die Ausgabe formatieren kann.
Ich habe aber eine Andere Zinsformel verwendet, da ich so keinen Exponenten habe.#include <stdio.h> int main (void) { int jahr, zins, kapital, n; printf ("Bitte geben Sie die Anzahl der Jahre ein "); scanf ("%d", &jahr); printf ("\nBitte geben Sie den Zinssatz ein "); scanf ("%d", &zins); printf ("\nBitte geben Sie das Startkapital ein "); scanf ("%d", &kapital); puts ("\n\n\n"); printf ("Jahr | Kapital"); for (n = 1; n <= jahr; n++) { kapital = kapital*(1.0+zins/100.0); // Formel Kn = Kn-1*(1+p/100) printf ("\n%4d | %d", n, kapital); } getchar (); return 0; }
-
hi. DICKES dankeschön
werds gleich mal ausprobiern. vielen dank nochmal dafür!!!
bye
-
Tatsächlich. Funktioniert prächtig!
Frage: Gibt es aber dennoch einen Weg das mit der anderen Formel zu machen? Bzw., wie kann ich in C mit Exponenten rechnen???
thx
cya
-
Hochzahlen geht mittels der Funktion pow() aus math.h
Natürlich geht es auch mit der anderen Formel - aber das schaffst du sicher auch alleine.
-
Du solltest aber dennoch die Formel die ich verwende benutzen, da diese schneller
ist. Und man will ja wo immer möglich Rechenzeit sparen und gerade bei diesen
zwei Formeln ist es doch einiges was man spart.
-
Naja, das is halt für die Schule, und wir müssen das später abgeben...
Ich denke mal der Lehrer will das wir das mit der vorgegebenen machen...
hmm. erstmal danke für eure hilfe.
hmm. das mit pow() und der anderen Formel ist halt so ne Sache...
Beides dürfen wir noch nicht verwenden... (ist halt noch nicht durchgenommen im UNterricht). gibt es eine möglichkeit das mittels einer zweiten schleife irgendwie manuell zu machen? thx.bye
-
Natuerlich.
a hoch 1 ist a
a hoch 2 ist a*a
a hoch 3 ist a*a*aStichwort: Schleife
-
So ungefähr hab ich mir das auch vorgestellt. nur wie soll man das anstellen? ich meine, ich will nur eine einzige schleife verwenden...
-
Also jetz nich eine einzige fürs Proggi sondern eine einzige für das mit dem Exponenten. Nur wie soll das gehen? Es soll halt ne FOR-Schleife sein...
-
In eine Funktion packen
Schreib dir das pow halt selbst.
-
Ich weiß ja nicht wie euer Lehrer drauf ist, wenn du ihm aber sagst, dass du
meine Zinsformel oben gewählt hast, weil Sie ersten Kinderleicht zu benutzen ist
und zweitens Rechenzeit spart, sollte dir das eigentlich Pluspunkte und keine Kritik
einbringen, der Lehrer sieht ja, dann dass du mitdenkst und sogar ne bessere Lösung gefunden hast
-
Des stimmt schon. Nur das meine ich ja jetzt mehr aus interesse. Weil die anderen müssen es ja auch hinkriegen und die haben die andere Zinsformel und das pow() halt nicht. Ich wollt nur aus Interesse wissen wie man sowas realisieren kann... thx
cya
-
der Lehrer sieht ja, dann dass du mitdenkst
Warst du jemals inner Schule? Da ist nix mit mitdenken und dafür noch gute Noten einkassieren.....
-
CarstenJ schrieb:
der Lehrer sieht ja, dann dass du mitdenkst
Warst du jemals inner Schule? Da ist nix mit mitdenken und dafür noch gute Noten einkassieren.....
Dann hab ich den falschen Lehrer im IT Unterricht
#include <stdio.h> int main (void) { int zahl = 10; int ergebnis = 1; int exp = 5; int i; for (i = 0; i < exp; i++){ ergebnis *= zahl; } printf ("%d",ergebnis); getchar (); return 0; }
-
Dann hab ich den falschen Lehrer im IT Unterricht
Tja, ich leider auch.....aber was sag ich dazu immer: Hauptsache gesund
-
ahhh. danke!!! ich glaub ich registrier mich mal
gutes gefühl von so vielen profis umgeben zu sein
-
Nochmal ne Frage: wofür isn die variable zahl genau? also was genau ist ihre bedeutung???
-
hmm. blöde frage eigentlich. hmm. ich glaube ich werds selbst mal versuchen...
thxcya
-
Also ich habs jetz mal versucht, aber irgendwie klappts immer noch net
# include <stdio.h> # include <ctype.h> int main() { float k, n, p, klammer, i, hintere=1, b; scanf("%d", &k); scanf("%d", &n); scanf("%d", &p); klammer=p/100+1; for (i = 0; i < n; i++) { hintere=hintere*klammer; b=hintere*k; printf("%d", b); } scanf ("%d", k); return 0; }