- ベストアンサー
if文とfor文で・・・
キーボードから今月の給料を入力する。 実行例 input 197868 10000---------> 19 5000---------> 1 1000---------> 2 500---------> 1 100---------> 3 50---------> 1 10---------> 1 5---------> 1 1---------> 3 以上のように表示させる。 を配列を使わずにif文とfor文だけでプログラムするんですが、for文をどこで使用すればいいのかわかりません・・・ 環境はunixでemacsを使用しています。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
>125498円の場合だと10000円札は給料/10000すれば12枚とでるのはわかるんですが5000円札以降の場合はどうすれば良いのですか? 給料を10000で割った余りを求めて、それを5000で割ってもできます。 後は、その繰り返し。
その他の回答 (4)
- hanamasao0
- ベストアンサー率0% (0/3)
単純に考えれば、inputに値が入ってるとして for(i=0;;i++){ input-=10000; if(input<10000) break; } printf("10000------>%d\n", i+1 ); こんな感じでやればいいんじゃないでしょうか。 このfor文を全部の桁分書いてもいいし、 全部の桁分のカウンタを用意すれば、 1つのfor文で済むような気もします。
>125498円の場合だと10000円札は給料/10000すれば12枚とでるのはわかるんですが5000円札以降の場合はどうすれば良いのですか? 給料から10000*12を引いて、その結果を5000で割ればいいのです。 後は、その繰り返し。
- jacta
- ベストアンサー率26% (845/3158)
ifもforもいらない気がします。無理やり使うことは可能ですが... それより、2000円札がないことの方が気になります。
補足
2000円札は考えない場合で、です。 125498円の場合だと10000円札は 給料/10000すれば12枚とでるのはわかるんですが 5000円札以降の場合はどうすれば良いのですか?
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
なんか前にも見たような… for使わなくてもいいんじゃないでしょうか
お礼
その方法でやってみます。 ありがとうございました。