C言語関係掲示板

過去ログ

No.564.住宅ローンの返済金額を求める

[戻る] [ホームページ]
No.5128

誰かこのプログラムできる人〜?
投稿者---諭吉(2003/02/12 13:32:54)


住宅ローンに関するプログラムです。
(住宅購入金の総額、頭金、年間の金利、月々の返済額をキーボードから入力)

出力例(________は気にしないで!あと・は年月)

返済年数 ____ 月 _______ローン残金
0年______1ヵ月______?????円 (いくらでもよい)
_・_______・_________・
_・_______・_________・
0年_____10ヵ月________200,530,000円
_・_______・_________・
_・_______・_________・
_・_______・_________・
27年_____5カ月________0円


No.5130

Re:誰かこのプログラムできる人〜?
投稿者---雪猫(2003/02/12 14:52:21)


お久しぶりです。雪猫です♪
silver foxさんのつっこみが入る前に(笑

諭吉さんがお使いの環境はなんでしょうか?
それと、ある程度自分の意見(プログラムソース等)を書きましょうね♪

キーボードからそれぞれ入力するならscanf()でとりこんで、
それを構造体か何かに格納して、あとはループ内で年数と計算処理・・・
って感じでしょうか

No.5134

Re:住宅ローン計算プログラム作成依頼?
投稿者---雪猫(2003/02/12 17:23:47)


ん〜と、雪猫です♪

金利計算面倒なのでそれ抜きで(^^;

/***ローン計算プログラム***/
#include <stdio.h>
#include <string.h>

struct koumoku{
	int sougaku;
	int atamakin;
	int nenri;
	int hensai;
};

int main(){
	int n=0;
	int i=0;
	int wk;
	struct koumoku K;

	printf("購入金額を入力してください。\n");
	scanf("%d",&K.sougaku);
	printf("頭金は?\n");
	scanf("%d",&K.atamakin);
	printf("年利は?\n");
	scanf("%d",&K.nenri);
	printf("月々の返済額は?\n");
	scanf("%d",&K.hensai);

	printf("返却年数   月   ローン残金\n");
	
	wk = K.sougaku - K.atamakin;

	while(1){
		n = n + 1;
		for(i=1;i<13;i++){
			printf("%d年    %dヵ月       %d円\n",n,i,wk);
			wk = wk - K.hensai;
			if(wk <= 0){
				printf("%d年    %dヵ月       %d円\n",n,i+1,0);
				break;
			}
		}
	}
	return 0;
}


単純に減算処理しかしていません。
っというより、私の頭ではこれで精一杯だったり(><;)
お役に立てたでしょうか・・・

No.5137

Re:住宅ローン計算プログラム作成依頼?
投稿者---雪猫(2003/02/12 18:27:47)


while文を抜ける処理を書き忘れました(><;)

whileの第1ループの中に、break処理いれてくださいm(__)m

今日も残業の雪猫でした☆ミ

No.5196

Re:誰かこのプログラムできる人〜?
投稿者---かずま(2003/02/15 20:04:00)


#include <stdio.h>

int main(void)
{
    double amount, init, rate, month;
    int i;

    puts("購入価額, 頭金, 年利(%), 毎月の返済額?");
    if (scanf("%lf%*c%lf%*c%lf%*c%lf", &amount, &init, &rate, &month) != 4)
        return 1;
    amount -= init;
    rate = rate/1200 + 1;
    printf("%3d年 %2d月 %13.0f\n", 0, 0, amount);
    for (i = 0; i < 500 && amount >= 0; i++) {
        amount = (long)(amount * rate) - month;
        printf("%s%3d年 %2d月 %13.0f\n", (i%12)?"":"\n", i/12, i%12+1, amount);
    }
    return 0;
}