おつりを出すプログラムの計算

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
メル

おつりを出すプログラムの計算

#1

投稿記事 by メル » 8年前

買い物をしてお金を支払ったときおつりの最小の枚数を表示させるときのプログラムを作るとき計算は何をすればできますか?

トントン
記事: 100
登録日時: 13年前

Re: おつりを出すプログラムの計算

#2

投稿記事 by トントン » 8年前

メル さんが書きました:買い物をしてお金を支払ったときおつりの最小の枚数を表示させるときのプログラムを作るとき計算は何をすればできますか?
それは、現実世界の日本のお金の話ですか? それとも日本のお金でも仮想(現実ではありえないお金等)のお金ですか?
現実世界のお金でもコインのみですか?札のみですか?

もう少し具体的に書くと良いかもしれません。

さて、現実世界の日本のお金のお話だとします。

メルさんの目の前にお金があるとします。
目の前にあるお金を最小の枚数のお金に分けるときどのように考えますか?

それをそのままプログラムに起こせば良いと思います。

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: おつりを出すプログラムの計算

#3

投稿記事 by みけCAT » 8年前

メル さんが書きました:買い物をしてお金を支払ったときおつりの最小の枚数を表示させるときのプログラムを作るとき計算は何をすればできますか?
具体的な仕様を決め、プログラムを書き、適当な入力を与えて実行すればできるでしょう。

というわけで、まずは具体的な仕様を決めましょう。
例えば、入力は何ですか?
  • 手元にあるお金の枚数と支払う金額
  • お釣りの金額
などの候補が考えられます。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
amehirune
記事: 181
登録日時: 10年前
住所: どっか
連絡を取る:

Re: おつりを出すプログラムの計算

#4

投稿記事 by amehirune » 8年前

言語が指定されていませんのでCで書いてみました。
但し、わざと汚く書いたつもりです。
尚、動作確認はしておりません。バグがあれば自分で修正してください。

簡単なコメントやプログラムでしか書いていないので、
解説なんぞ要りませんよね。

コード:

void coin(){

	int num[10] = {0};	// 最大10枚まで登録できるよ!
	int charge;			// お釣り

	scanf( "%d",&charge );	// お釣りはいくら?

	num[0] = charge/50;					// 50ドルは何枚?
	charge = charge - 50*num[0];		// 払った分だけひきましてー
	num[1] = charge/25;					// 25ドルは何枚?
	charge = charge - 25*num[1];		// 払った分だけひきましてー
	num[2] = charge;					// あと1ドル硬貨しかないんですがそれは

	printf( "$50->%d,$25->%d,$1->%d\n",num[0],num[1],num[2] );

}
ほら、来いよ!! 誤字や矛盾を指摘したい奴から、前に出てこいよぉおおおおおおおッ!!!
※都合により、不定期でしか現れません。即返などはできませんのでご了承ください※

閉鎖

“C言語何でも質問掲示板” へ戻る