2 차 클래스가 ax^2 + bx + c 형식으로 입력되는 2 차 클래스의 읽기 방법을 작성해야합니다. 이 클래스에 대한 설명은 다음과 같습니다.2 차 읽기 방법
사용자에게 표준 형식의 수식을 요청하고 세 개의 인스턴스 변수를 올바르게 설정하는 읽기 메서드를 추가합니다. (따라서 사용자가 3x^2 - x를 입력하면 인스턴스 변수를 3, -1 및 0으로 설정합니다. 이전에 수행 한 문자열 처리가 필요합니다. 입력 된 실제 방정식을 그대로 표시하고 예상 출력으로 적절히 표시합니다.
문자열 조작과 else 문을 사용하여 ax^2 부분을 수행 할 수있었습니다. 그러나 나는 bx와 c 앞에있을 수있는 기호 때문에 방정식의 bx와 c 부분을 어떻게 처리해야할지 모르겠다. 여기 방법의 도끼^2 부분을 어떻게했는지가 나와 있습니다.
public void read()
{
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter a quadratic equation in standard format.");
String formula = keyboard.next();
String a = formula.substring(0, formula.indexOf("x^2"));
int a2 = Integer.parseInt(a);
if (a2 == 0)
{
System.out.println("a = 0");
}
else if (a2 == 1)
{
System.out.println("a = 1");
}
else
{
System.out.println("a = " + a2);
}
}
예제로 코드를 자유롭게 작성하십시오. 도움을 주시면 대단히 감사하겠습니다.
-2x^2 + 3x-1 또는 -2x^2 또는 -x^2 + 3 인 2 차 방정식을 가지고 있다면 어떻게 될까요? 그 사건을 어떻게 처리 할 생각입니까? – Makoto
thats if else 문의 요점은 내 프로그램이 처음 2 개의 방정식에 대해 작동하지만 방금 추가 테스트를 수행하고 마지막 -x^2 + 3 방정식에 대해 작동하지 않았으므로 코딩을 더해야합니다. 그건 내가 생각하기에. – user007
내 주장은 가장자리의 경우가 더 많았습니다. 당신은 그것들에 대해 매우 신중해야하며 그것들을 설명해야합니다. 궁극적으로 연산자로 구분 된 문자열의 각 부분에서 동일한 소비 작업을 수행합니다. 그것은 힌트입니다. 또 다른 힌트는 [이 Debuggex 링크] (http://www.debuggex.com/?re=%28%28%28-%7C%2B%29%3F%29%28%5Cd%2Bx%)를 방문하면 3F % 7C % 28X % 7B1 % 7D % 5C % 5E % 5Cd % 2B % 29 % 29 % 29 % 2B & str = x % 5E4-3x % 5E2 % 2B17) (정규 표현식에서). – Makoto