私はプログラミングとウェブデザインを専攻した最初の年で、これらすべてに非常に慣れていません。私は自分のコースをオンラインで受講していますが、私の教授は時折手に入れるのが難しいです.
とにかく、銀行情報(口座番号、口座残高、口座タイプ[貯蓄または小切手])を取得し、利息とサービス料を計算し、口座番号と口座残高を出力するプログラムからこのコードを作成しました。
私の主な問題は、変数「servCharge」が初期化されていない可能性があるという構文エラーです。私はこれを何度も見てきましたが、私が間違ったことを追跡することはできません.
このようなものは、ほとんどの人にとって簡単に見つけられると確信しています。これに関するヘルプと、コードをクリーンアップする方法に関する全体的な提案は、役に立ち、非常に高く評価されます!
これが私がこれまでに持っているものです:
import java.util.*;
public class Unit5
{
static Scanner console = new Scanner(System.in);
public static void main(String[] args)
{
final double CHECKING_MIN_BAL = 25.00;
final double CHECKING_SFEE = 25.00;
final double MAX_CHECKING_INTR = .015;
final double MIN_CHECKING_INTR = .03;
final double SAVINGS_MIN_BAL = 500.00;
final double SAVINGS_SFEE = 10.00;
final double SAVINGS_INTR = .04;
final double FIVE_THOU = 5000.00;
String accountNumber;
String accountBal;
String accountType;
double accountBalDbl;
double interest;
double servCharge;
double accountBalFinal;
System.out.println("Bank");
System.out.println("Please enter a 10 digit "
+"account number or enter # to exit: ");
while (! ( accountNumber = console.next() ).equalsIgnoreCase( "#" ) )
{
if (accountNumber.matches("^[0-9]{10}"))
{
System.out.println();
}else{
System.out.println("Invalid account number!");
System.exit(0);
}
System.out.println("Please enter account balance: ");
accountBal = console.next();
{
if (accountBal.matches("^\\$?([0-9]{1,3},([0-9]{3},)*[0-9]{3}|[0-9]+)(\\.[0-9][0-9])?$")) //adjust so it takes more numbers before decimal
{
System.out.println();
}else{
System.out.println("Invalid dollar amount!");
System.exit(0);
}
System.out.println("Please enter account type,"
+"C for checking or S for savings");
accountType = console.next();
{
if (accountType.matches("^[Ss | Cc]")) //look into this
{
System.out.println();
}else{
System.out.println("Invalid account type, please enter"
+"C or S");
System.exit(0);
}
accountBalDbl = Double.parseDouble(accountBal);
{
if (accountType == ("[Cc]"))
{
if (accountBalDbl < CHECKING_MIN_BAL)
servCharge = CHECKING_SFEE;
else
servCharge = 0.0;
if (accountBalDbl < CHECKING_MIN_BAL + FIVE_THOU)
interest = accountBalDbl * MIN_CHECKING_INTR;
}
}
{
if (accountType == ("S | s"))
{
if (accountBalDbl < SAVINGS_MIN_BAL)
servCharge = SAVINGS_SFEE;
interest = 0.0;
}else{
servCharge = 0.0;
interest = accountBalDbl * SAVINGS_INTR;
}
}
accountBalFinal = (accountBalDbl - servCharge) + interest;
System.out.println("Account Number: " + accountNumber);
System.out.println();
System.out.println("Current Balance: " + accountBalFinal);
System.out.println();
System.out.println("Please enter a 10 digit "
+"account number or enter # to exit: ");
}
}
}
}
}