#include <stdio.h>
#include <math.h>
float annuitaet(float bw, float p, int zzr) {
float hilf
=pow((1+p
),zzr
); return bw*hilf*p/(hilf-1);
}
int main(void)
{
float anfangsschuld,zinssatz,restschuld;
float zinsen,tilgung,gesamtzahlungen,monate;
int zaehler,zeile=0;
printf("\nKreditberechnung\n\n"); zinssatz/=1200.0;
printf("Zahlungszeitraum (Monate) : "); scanf("%f",&monate
); printf("\nAnnuitaet : %10.2f\n\n", annuitaet(anfangsschuld,zinssatz,monate));
restschuld = anfangsschuld;
printf("Zeit \t | Zinsen \t | tilgung\t | Schuldenstand\n");
for(zaehler=1;zaehler<=monate;zaehler++) {
zinsen=restschuld * zinssatz;
tilgung=annuitaet(anfangsschuld,zinssatz,monate) - zinsen;
restschuld -= tilgung;
if (zaehler==monate) restschuld=0.0;
printf("%4i \t | %8.2f \t | %8.2f \t | %8.2f \n", zaehler
,zinsen
,tilgung
,restschuld
); } /* for */
gesamtzahlungen=monate*annuitaet(anfangsschuld,zinssatz,monate) ;
printf("\nGesamtzahlungen = %8.3f EUR\n",gesamtzahlungen
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CgpmbG9hdCBhbm51aXRhZXQoZmxvYXQgYncsIGZsb2F0IHAsIGludCB6enIpIHsKICAgICAgIGZsb2F0IGhpbGY9cG93KCgxK3ApLHp6cik7CiAgICAgICByZXR1cm4gYncqaGlsZipwLyhoaWxmLTEpOwogICAgICAgfQogICAgICAgaW50IG1haW4odm9pZCkKICAgICAgIHsKICAgICAgICAgIGZsb2F0IGFuZmFuZ3NzY2h1bGQsemluc3NhdHoscmVzdHNjaHVsZDsKICAgICAgICAgICBmbG9hdCB6aW5zZW4sdGlsZ3VuZyxnZXNhbXR6YWhsdW5nZW4sbW9uYXRlOwogICAgICAgICAgICBpbnQgemFlaGxlcix6ZWlsZT0wOwogICAgICAgICAgICBwcmludGYoIlxuS3JlZGl0YmVyZWNobnVuZ1xuXG4iKTsKICAgICAgICAgICAgcHJpbnRmKCJLcmVkaXQgKEVVUikgOiAiKTsgc2NhbmYoIiVmIiwmYW5mYW5nc3NjaHVsZCk7CiAgICAgICAgICAgIHByaW50ZigiWmluc3NhdHogKCUlKSA6ICIpOyBzY2FuZigiJWYiLCZ6aW5zc2F0eik7CiAgICAgICAgICAgemluc3NhdHovPTEyMDAuMDsKICAgICAgICAgICBwcmludGYoIlphaGx1bmdzemVpdHJhdW0gKE1vbmF0ZSkgOiAiKTsgc2NhbmYoIiVmIiwmbW9uYXRlKTsKICAgICAgICAgICBwcmludGYoIlxuQW5udWl0YWV0IDogJTEwLjJmXG5cbiIsCiAgICAgICAgICAgICAgICAgICAgIGFubnVpdGFldChhbmZhbmdzc2NodWxkLHppbnNzYXR6LG1vbmF0ZSkpOwogICAgICAgICAgIAogICAgICAgICAgICByZXN0c2NodWxkID0gYW5mYW5nc3NjaHVsZDsKICAgICAgICAgICAKICAgICAgICAgICAgcHJpbnRmKCJaZWl0IFx0IHwgWmluc2VuIFx0IHwgdGlsZ3VuZ1x0IHwgU2NodWxkZW5zdGFuZFxuIik7CiAgICAgICAgICAgCiAgICAgICAgICAgCiAgICAgICAgICAgIGZvcih6YWVobGVyPTE7emFlaGxlcjw9bW9uYXRlO3phZWhsZXIrKykgewogICAgICAgICAgICB6aW5zZW49cmVzdHNjaHVsZCAqIHppbnNzYXR6OwogICAgICAgICAgICB0aWxndW5nPWFubnVpdGFldChhbmZhbmdzc2NodWxkLHppbnNzYXR6LG1vbmF0ZSkgLSB6aW5zZW47CiAgICAgICAgICAgIHJlc3RzY2h1bGQgLT0gdGlsZ3VuZzsKICAgICAgICAgICAgaWYgKHphZWhsZXI9PW1vbmF0ZSkgcmVzdHNjaHVsZD0wLjA7CiAgICAgICAgICAgIHByaW50ZigiJTRpIFx0IHwgJTguMmYgXHQgfCAlOC4yZiBcdCB8ICU4LjJmIFxuIiwgemFlaGxlcix6aW5zZW4sdGlsZ3VuZyxyZXN0c2NodWxkKTsKICAgICAgICAgICAgICAgICB9IC8qIGZvciAqLwogICAgICAgICAgICAgICAgIGdlc2FtdHphaGx1bmdlbj1tb25hdGUqYW5udWl0YWV0KGFuZmFuZ3NzY2h1bGQsemluc3NhdHosbW9uYXRlKSA7CiAgICAgICAgICAgICAgICAgcHJpbnRmKCJcbkdlc2FtdHphaGx1bmdlbiA9ICU4LjNmIEVVUlxuIixnZXNhbXR6YWhsdW5nZW4pOwogICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgICAgIH0K