アプリ版:「スタンプのみでお礼する」機能のリリースについて

非常に困っています。助けて下さい。
元本と単利、複利、年数をそれぞれ入力でき、入力した年数が経過すると単利、複利がそれぞれいくらになるかが表示され、もし複利の方が単利より低い場合、何年後に単利を追い越すかを表示するソースプログラムを作ってください。

A 回答 (2件)

やぁ。


とりあえずこんな感じで目的の動作はするみたいです。
参考にどうぞ
(タブが反映されないのでちょっと見づらいかも)

#include<stdio.h>

//単利の場合の返済額を返す
float rTanri(int ganpon,float riritsu,int nensu);
//複利の場合の返済額を返す
float rFukuri(float ganpon,float riritsu,int nensu);

int main(void){

int ganpon,nensu;//元本と年数
floattanri,fukuri; //単利と複利それぞれの利回り
floatresult_tanri,result_fukuri; //単利複利それぞれの場合の返済額


/*入力*/
printf("元本(整数):"); scanf("%d",&ganpon);
printf("単利(小数):"); scanf("%f",&tanri);
printf("複利(小数):"); scanf("%f",&fukuri);
printf("年数(整数):"); scanf("%d",&nensu);

/*入力年度の返済額計算および出力*/
result_tanri = rTanri(ganpon,tanri,nensu);
result_fukuri = rFukuri(ganpon,fukuri,nensu);
printf("単利の場合の返済額:%d円\n",(int)result_tanri);
printf("複利の場合の返済額:%d円\n",(int)result_fukuri);


/*複利の方が低い場合*/
if(fukuri < tanri){
nensu=2; //1ねんめは明らかに単利の返済額>複利の返済額なので2年目から
while(1){
if( rFukuri(ganpon,fukuri,nensu) > rTanri(ganpon,tanri,nensu) )
break;
else
nensu++;
}
printf("%d年以降、単利の場合の返済額より複利の場合の返済額が多くなります。\n",nensu);
}

return 0;
}

float rTanri(int ganpon,float riritsu,int nensu){
return ganpon+(ganpon*riritsu)*nensu;
}

float rFukuri(float ganpon,float riritsu,int nensu){
if(nensu <= 0)
return ganpon;
else
return rFukuri(ganpon+(ganpon*riritsu),riritsu,--nensu);
}
    • good
    • 0

何をしたいのかわかりません. 「単利」や「複利」は「入力する」ものじゃないよ.

この回答への補足

 

補足日時:2010/12/26 23:38
    • good
    • 0
この回答へのお礼

 

お礼日時:-0001/11/30 00:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!