Can anyone tell me how to keep the values on the text in my code unchanged, ***printf("\tAmount Borrowed=%6.2f\tRate=%5.2f per cent\n\n",amount,rate);*** but the text still to be printed as a heading on each printout page?
And are the integers and floats initialized correctly?
Can the look of the code be improved a bit? How?
Thanks
Code:
#include<stdio.h>
main()
{
/*This is a program to perform*/
/*compound interest calculation*/
float amount,interest=0,rate,pay_back;
float total_loan=0,total_paid=0,total_owing=0;
int year=1,repay_year,page=0;
int remainder=0;
printf("Enter the amount borrowed\n");
scanf("%f",&amount);
printf("Enter the interest rate as a percentage\n");
scanf("%f",&rate);
printf("Enter the borrowing period\n");
scanf("%d",&repay_year);
printf("Enter the annual repayment\n");
scanf("%f",&pay_back);
/*Output for heading*/
page++;
printf("\t\tInterest Report\n");
printf("\t\t Page%2d\n\n",page);
printf("\tAmount Borrowed=%6.2f\tRate=%5.2f per cent\n\n",amount,rate);
printf(" Year Interest Amount Amount\n");
printf(" for Year at Year End Paid Back\n");
for(year=1;year<=repay_year;year++)
{
remainder=year%5;
interest=amount*rate/100;
amount+=interest; /*Get the amount for the next year*/
total_loan+=amount;
total_paid+=pay_back;
total_owing+=total_loan-total_paid;
printf("\t%2d%9.2f\t%9.2f\t%9.2f\n",year,interest,amount,total_paid);
if(remainder==0&&year!=repay_year)
{
page++;
printf("\t-------------------------------------------\n");
printf("\tTotal amount of loan %9.2f\n",amount);
printf("\tTotal amount paid back%9.2f\n",total_paid);
printf("\tTotal owing %9.2f\n\n\n",amount-total_paid);
printf("\t\tInterest Report\n");
printf("\t\t Page%2d\n\n",page);
printf("\tAmount Borrowed=%6.2f\tRate=%5.2f per cent\n\n",amount,rate);
printf(" Year Interest Amount Amount\n");
printf(" for Year at Year End Paid Back\n");
}
else
if(year==repay_year)
{
printf("\t-------------------------------------------\n");
printf("\tTotal amount of loan %9.2f\n",amount);
printf("\tTotal amount paid back%9.2f\n",total_paid);
printf("\tTotal owing %9.2f\n\n\n",amount-total_paid);
}
}
}