是的,所以我试图用一台机器正在分配的分数来制作硬币分配器。现在我制作了一个以美分为单位的构造函数,然后我为分配的硬币制作了一个函数,但我不知道如何制作它以便分配最大的硬币。
public class Coin {
private int amount;
public Coin(int change){
amount = change;
}
public void dispenseCoin(){
int quarter = 25;
int dime = 10;
int nickel = 5;
int penny = 1;
}
}
答案 0 :(得分:1)
我会使用enum
作为硬币值。
然后你可以用两个简单的循环来解决它:
import java.util.ArrayList;
import java.util.List;
enum CoinValue {
QUARTER(25), DIME(10), NICKEL(5), PENNY(1);
int value;
CoinValue(int value) {
this.value = value;
}
int getValue() {
return value;
}
}
public class Coin {
private int amount;
public Coin(int change){
amount = change;
}
public List<CoinValue> dispenseCoin(){
List<CoinValue> results = new ArrayList<CoinValue>();
for (CoinValue coin : CoinValue.values()) {
while (coin.getValue() <= amount) {
results.add(coin);
amount -= coin.getValue();
}
}
return results;
}
public static void main(String[] args) {
Coin c = new Coin(41);
System.out.println(c.dispenseCoin());
}
}