【发布时间】:2013-11-29 09:30:02
【问题描述】:
我想要一个java程序来换钱,
示例:如果我输入 98 卢比,那么我需要如下结果,
1(Rs. 50) - Rs. 50
2(Rs. 20) - Rs. 40
1(Rs. 5) - Rs. 5
1(Rs. 2) - Rs. 2
1(Rs.1) - Rs. 1
我已经尝试了使用 switch 案例和许多 if 和 else 的逻辑,但我无法实现我想要的。请给出一些想法/逻辑来启动这个..
我尝试的程序是,
package in.javadomain;
import java.util.ArrayList;
import java.util.ListIterator;
public class PowerOfTwo {
public static void main(String[] args) {
int input = 98;
int[] money = { 1, 2, 5, 10, 20, 50, 100, 500, 1000 };
ArrayList<Integer> moneyChange = new ArrayList<Integer>();
for (int i = 0; i<money.length; i++) {
if (input > money[i]) {
//input = money[i];
moneyChange.add(money[i]);
//System.out.println(input);
}
}
ListIterator li = moneyChange.listIterator(moneyChange.size());
int changes = 0;
while(li.hasPrevious()){
int temp = (int) li.previous();
if(temp<input){
// System.out.println(temp);
changes = changes+temp;
System.out.println(changes);
}
}
}
}
输出是,
50
70
80
85
87
88
但我想要如下的顺序,
50
70
90
95
97
98
请尝试帮助我实现...
【问题讨论】:
-
发布您的代码,展示您尝试过的内容以及遇到的问题。
标签: java