銀行取引をシミュレートするプログラムの作成に取り組んでいます。入金、出金、または送金を希望するかどうかをユーザーに尋ねなければなりません。
特定の金額 (たとえば 1000) を入金すると、残高が 1000 であると表示されます。次に、400 のような数字を引き出すように要求すると、残高が -400 と表示されます。結局のところ、残高を確認する必要があるのではないかと考えたところ、600 になるはずの正しい残高が表示されますが、0 と表示されています。たとえば、次のトランスクリプトを参照してください。
私のコード(以下に示す)で残高を= 0にしたので、考えていましたが、= 0を取り除いてプログラムを実行しようとすると、初期化する必要があると表示されます。
私は立ち往生していて、それを理解したいと思っています。修正したコード全体を投稿しないでください。自分で直して学びたい!
import java.util.Scanner;
public class BankTransactions {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num;
do {
double balance = 0;
double amount;
System.out.println("Type Number");
System.out.println("1. Deposit");
System.out.println("2. Withdrawal");
System.out.println("3. Balance");
System.out.println("4. Exit");
num = scan.nextInt();
if (num == 1) {
System.out.println("Enter amount to deposit: ");
amount = scan.nextDouble();
// Add the amount to the balance
balance += amount;
System.out.println("Your balance is");
System.out.println(balance);
} else if (num == 2) {
System.out.println("Enter amount to withdrawal: ");
amount = scan.nextDouble();
// Remove the amount from the balance
balance -= amount;
System.out.println("Your balance is");
System.out.println(balance);
} else if (num == 3) {
System.out.println("Your Balance");
System.out.println(balance);
}
} while (num != 4);
System.out.println("Good Bye!");
}
}