C言語プログラミングに関して質問です。
元本、年数、単利、複利を順にa,b,c,dと置き、年数経過後の単利、複利の場合のそれぞれの額をe,fとしたとき、
e = a+(a*c)*b
となるのはわかるのですが、複利の場合の金額を求める時の計算式はどう書けばよいのですか。
また、複利が単利より小さい時、何年後に複利のときの金額が単利のときの金額を越すかを表示したいのですが、次の書き方で合ってますか。
if(d < c){
b = 2;
while(1){
if(f > e)
break;
else
b++;
}
printf("%d年後、単利のときの金額を複利のときの金額が追い越します\n",b);
}
No.6ベストアンサー
- 回答日時:
>私の目には while 文で無限ループになるように見えます。
y1=元本*(1+利回り*x)
と
y2=元本*(1+利回り)^x
の高校の数式の違い(ax と a^x、ただしa>1)がわからない人には、そう見えるかもネ。
No.7
- 回答日時:
高校の数式の違いもなにも
while 文の中では b が増えていってるだけで
e と f の値が変化するする処理が記載されてない以上
一旦ループが始まったら無限ループの気がしますが。
初期化されていないので一発で抜ける事もあるかもしれませんけれど。
No.5
- 回答日時:
私の目には while 文で無限ループになるように見えます。
なので、C言語としての書き方は合っているようですが、
要求仕様に対しての書き方としては誤っているようです。
No.4
- 回答日時:
ああ、あの tennbosu さんですか。
結構みなさん回答して下さっているのに、きちんと返事がないことであなたの質問者としての資質に疑問を持つ方が多いようです。
まず、考え方は↓ですよね。
http://daigakusei.daa.jp/money/tanrifukuri.html
プログラムは、変数を誰が見てもわかるように書く事が基本です。それを心掛けてください。
----- 実行例 -----
ganpon rimawari_tan(%) rimawari_huk(%)? 100 20 15
0 year: tanri= 100.0 yen hukuri= 100.0 yen
1 year: tanri= 120.0 yen hukuri= 115.0 yen
2 year: tanri= 140.0 yen hukuri= 132.2 yen
3 year: tanri= 160.0 yen hukuri= 152.1 yen
4 year: tanri= 180.0 yen hukuri= 174.9 yen
5 year: tanri= 200.0 yen hukuri= 201.1 yen <
6 year: tanri= 220.0 yen hukuri= 231.3 yen <
7 year: tanri= 240.0 yen hukuri= 266.0 yen <
8 year: tanri= 260.0 yen hukuri= 305.9 yen <
9 year: tanri= 280.0 yen hukuri= 351.8 yen <
/* 1回答例 */
#include <stdio.h>
int main(void)
{
float ganpon; /* 元本 */
float rimawari_tan; /* 利回り */
float rimawari_huk; /* 利回り */
float tanri; /* 単利 */
float hukuri; /* 複利 */
int year=0, count=0;
fprintf(stderr, "ganpon rimawari_tan(%%) rimawari_huk(%%)? ");
scanf("%f %f %f", &ganpon, &rimawari_tan, &rimawari_huk);
tanri = hukuri = ganpon;
while(count < 6){
printf("%2d year: \ttanri= %.1f yen \thukuri= %.1f yen %s\n",
year, tanri, hukuri, tanri < hukuri ? "<" : "");
tanri += ganpon * rimawari_tan / 100.0;
hukuri *= 1.0 + rimawari_huk / 100.0;
if(tanri < hukuri) count++;
year++;
}
return 0;
}
No.3
- 回答日時:
「どーでもいいんだけど」
暮れの http://oshiete.goo.ne.jp/qa/6407463.html
#1 では、だめなの?。
(2つの else を取れば判り易いかも・・)
蛇足
http://okwave.jp/qa/q6309305_2.html#answer
#1 を、「ベストアンサー」にするかと思った・・・。
唯一、仕様を満たしている・・。
「評価」って、ダテじゃないね・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(教育・科学・学問) 1980 年代後半のバブル経済の頃 日本では預貯金金利が年7%を超えることもあり ました。 金利を7 3 2023/07/21 00:31
- その他(Microsoft Office) パワークエリの複数ファイルのデータ統合について 3 2022/07/14 17:06
- 金融業・保険業 もうすぐ大学の金融論の試験なのですが問題が全然解けません...泣 どなたか分かる方いたら教えてもらえ 1 2023/07/21 22:03
- 英語 "by a ~ 0.5 percentage point"が単数となる理由等について 2 2023/05/11 10:41
- 債券・証券 無分配積み立ての複利効果について 3 2023/04/16 13:20
- 経済学 高校数学の複利/元利計算について 1 2022/11/04 20:19
- 不動産投資・投資信託 投資信託の「複利」どこから生まれるのでしょうか... 7 2023/03/11 10:52
- その他(お金・保険・資産運用) 10年間、毎月100ドルずつ投資し、次に10年間、300ドルずつ投資して、最後に毎月500ドルずつ1 4 2022/07/03 15:00
- 大学受験 青チャート数B例題98 単語の意味がわかりません。ネットで調べてもよく理解できませんでした。 元利合 1 2022/04/13 16:43
- 不動産投資・投資信託 投資信託 複利の仕組みについて。 楽天証券にてつみたてNISAニーサ枠で 少額ですが 3銘柄を約2年 2 2023/06/14 08:44
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語で電卓を作成する。
-
for文の中にswitch文はいれられ...
-
構文エラー";"が型の前にあり...
-
#if 1 #elseの意味について
-
プログラム
-
初心者です。for文、if文を使っ...
-
配列を使って魔方陣
-
階乗のプログラム!!
-
C言語プログラムが理解できなくて…
-
while文について、c言語...
-
c言語のwhile文を使った計算で...
-
C言語です
-
全角文字の判定
-
scanf関数を用いての加減乗除%...
-
C言語 数字以外を入力させない...
-
c言語プログラミングで1から100...
-
c言語についての質問です。
-
VHDLで、case文とwhen文のどち...
-
C言語階乗の総和を求める
-
プログラミングに関して
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
構文エラー";"が型の前にあり...
-
for文の中にswitch文はいれられ...
-
#if 1 #elseの意味について
-
プログラミングで二番目に大き...
-
getcの改行判定
-
C言語プログラムが理解できなくて…
-
C言語 数字以外を入力させない...
-
配列を関数に渡す方法
-
配列を使って魔方陣
-
初心者です。for文、if文を使っ...
-
c言語for文
-
c言語で平均をだす
-
while文について、c言語...
-
scanf関数を用いての加減乗除%...
-
行列をべき乗させるプログラム
-
c言語プログラミングで1から100...
-
C言語階乗の総和を求める
-
scanfが実行されません
-
階乗のプログラム!!
-
C言語の二分法のプログラムにつ...
おすすめ情報