私は最近、Objective-C (またはプログラミング) の勉強を始めたばかりで、単純なプログラムで行き詰っています。
私は 4 分の 1、10 セント硬貨、5 セント硬貨、および 1 セント硬貨でおつりを作ろうとしていますが、思いついた解決策では、5 セント硬貨または 1 セント硬貨にランダムな値が与えられることに気付きました。
元。25 の変更は、「変更は 1 四半期、0 ダイム、-1881139893 ニッケル、および 4096 ペニスです」となります。
例2。30 の変更は、「変更は 1 四半期、0 ダイム、1 ニッケル、および 4096 ペニスです」となります。
この動作を修正するには、何を追加/変更できますか?
また、4 つの異なる if ステートメントを実行するよりも優れた解決策はありますか?
ありがとう!
以下は私のコードです:
int orig, q, d, n, p;
NSLog(@"Give money to make change");
scanf("%i", &orig);
if(orig >= 25) {
q = orig/25;
orig -= q*25;
}
if(orig >= 10 && orig < 25) {
d = orig/10;
orig -= d*10;
}
if(orig >= 5 && orig < 10) {
n = orig/5;
orig -= n*5;
}
if(orig >= 1 && orig < 5) {
p = orig;
}
NSLog(@"The change is %i quarter, %i dime, %i nickels, and %i pennis", q, d, n, p);