この read メソッドの 103 行目で構文エラーが発生しましたが、その理由がわかりません。あなたの考えを知ってください。エラーはelseが原因であり、実行可能な解決策ではない else を削除するように指示するだけです
public void read()
{
int a = 0;
int b = 0;
int c = 0;
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter a quadratic equation in standard format.");
String formula = keyboard.next();
int x = formula.indexOf('x');
if (x < 0)
{
c = Integer.parseInt(formula);
}
else
{
String aa;
int x2 = formula.lastIndexOf('x');
if (x == x2)
{
if ((x+1) != formula.length())
{
aa = formula.substring(x, (x+3));
}
else
{
aa = formula;
}
if(aa.equalsIgnoreCase("x^2"))
{
String aa2 = formula.substring(0, x+3);
String aaa = formula.substring(0, x);
if (aa2.equalsIgnoreCase("x^2"))
a = 1;
else
{
a = Integer.parseInt(aaa);
}
String cc = formula.substring(x + 3);
if (cc.equals(""))
{
c = 0;
}
else
{
c = Integer.parseInt(cc);
}
}
else
{
String bbb = formula.substring(0, x);
if (x == 0)
{
b = 1;
}
else
{
b = Integer.parseInt(bbb);
}
String cc = formula.substring(x + 1);
System.out.println("c = " + cc);
if(cc.equals(""))
{
c = 0;
}
else
{
c = Integer.parseInt(cc);
}
}
}
else
{
String aa2 = formula.substring(0, x +3);
String aaa = formula.substring(0, x);
if (aaa.equalsIgnoreCase("x^2"))
{
a = 1;
}
else
{
a = Integer.parseInt(aa2);
}
if((x2 + 1) != formula.length())
{
if(formula.charAt(x2 + 1) == '+');
{
String cc2 = formula.substring(x2 + 2);
c = Integer.parseInt(cc2);
}}
else if (formula.charAt(x2 + 1) == '-')
{
String cc2 = formula.substring(x2 + 1);
c = Integer.parseInt(cc2);
}
}
**else**
{
c = 0;
if(formula.charAt(x + 3) == '+')
{
String bb2 = formula.substring((x + 4), x2);
b = Integer.parseInt(bb2);
}
else
{
String bb2 = formula.substring((x + 3), x2);
b = Integer.parseInt(bb2);
}
}
}
System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("c = " + c);
}