我是个傻子
import java.util.Scanner;
public class ATM {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double withdraw = scanner.nextDouble();
double balance = scanner.nextDouble();
int withdraw = 0; int balance;
if (withdraw % 5 == 0 && withdraw<(balance-.5)) {
balance = balance - (withdraw + .5);
System.out.println(balance);
}
else {
System.out.println(balance);
}}}
我正在尝试将余额减去提款金额,同时产生 0.50 美元的费用。不幸的是,它只减去 0.50 美元,而没有减去提款。提前致谢。
固定代码
import java.util.Scanner;
public class ATM {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double withdraw = scanner.nextDouble();
double balance = scanner.nextDouble();
if (withdraw % 5 == 0 && withdraw<(balance-.5)) {
balance -= (withdraw + .5);
System.out.println(balance);
}
else {
System.out.println(balance);
}}}
最佳答案
这是算法https://stackoverflow.com/a/14387552/1083704
您有同样的问题 - 复杂表达式中的错误,其中包括使用未知类型。并且您必须执行相同的操作来调试程序 - 使用中间变量将 oneliner 简化为多个简单表达式。然后您可以逐步调试代码并观察这些中间值。成为一名程序员就意味着成为一名黑客,如果不学习调试,你就不会成为一名黑客。
关于java - 我的新手代码没有减去两个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14409453/