【发布时间】:2019-09-20 13:43:35
【问题描述】:
我写了这个短代码,我想让用户输入银行余额。 然后在新的确认对话框中,他们将选择是否要输入交易金额。 如果“是”,那么他们输入正数或负数。 如果输入的值为负数,则程序会从银行余额中减去交易金额。 如果输入的值为正,则程序会将交易值添加到银行余额中。 最后,如果用户在确认对话框中选择“否”按钮,则程序将以计算结果终止! 问题: 当我输入银行余额和交易的数字时,我得到了错误的答案!
我尝试使用 while 循环并执行 while,但我仍然得到错误的结果!
double total = 0;
String blc = JOptionPane.showInputDialog(null,"Enter the balance");
double balance = Double.parseDouble(blc);
int trcsn = JOptionPane.showConfirmDialog(null,"Transaction: ","",JOptionPane.YES_NO_OPTION);
while(trcsn == JOptionPane.YES_OPTION){
String transaction = JOptionPane.showInputDialog(null,"Enter amount:");
double trc = Double.parseDouble(transaction);
trcsn = JOptionPane.showConfirmDialog(null,"Transaction: ","",JOptionPane.YES_NO_OPTION);
if(trc < 0){
total = balance - trc;
}else{
total = balance + trc;
}
}
JOptionPane.showMessageDialog(null,total);
1:我输入 1000 美元作为银行余额。
2:我输入1050(正数)作为交易金额。
3:我输入-500(负值)作为第二次尝试的交易金额。
4: 答案是 1500.00,这是错误的!
1000 + 1050 = 2050.00
2050 - 500 = 1550.00
答案应该是 1550
为什么回答错???
【问题讨论】:
标签: java