如何在 Java 中实现扩展公式

我正在练习数学,我想到我应该用 Java 编写一个程序,它可以接受变量“a”和“b”的输入,然后它会询问用户他们想要执行哪些扩展公式。

询问用户他们想使用哪些公式

像这样的东西。目前,它只有 5 个公式,因为我懒得添加更多。

代码

我开始显示这个程序可以在控制台中执行的公式

    System.out.println("Choose the Formula");
    System.out.println("Enter 1 for (a+b)^2");
    System.out.println("Enter 2 for (a-b)^2");
    System.out.println("Enter 3 for (a^2 - b^2)");
    System.out.println("Enter 4 for (a+b)^3");
    System.out.println("Enter 5 for (a-b)^3");

因此,该程序适用于以下公式:

  • (a+b)²
  • (ab)²
  • (a² – b²)
  • (a+b)³
  • (ab)³

我在一个整数数据类型的变量ip中输入了选项(不知道为什么我选择了这个名字?)。

    int  ip = sc.nextInt();

我也把’a’和’b’的值作为输入,因为它们是公共变量(公共变量是在每个条件语句中重复使用的变量,最好在条件语句之前将公共变量的值输入开始。)

    System.out.println("Enter the value of a and b");
    double  a = sc.nextDouble();
    double  b = sc.nextDouble();

变量ab将包含用户输入的值。(注意:变量ab是双精度数据类型,因为用户可能想要输入十进制数。)

现在,当你得到值时,你只需要输入公式并解决它。这适用于数学,但在 Java 中,您必须做更多的工作。

首先,有一个条件,它将执行用户输入的公式。

条件声明

例如,如果用户输入选项 1,程序将根据给定的ab值计算 (a+b)² 。

同样,如果用户输入选项 5,程序将计算 (ab)³。如果用户输入任何其他选项,他将得到输出:“错误选择”。

这是如果用户输入选项 1 将执行的语句块:

ans = a*a + 2*a*b + b*b;
System.out.println("Working:");
System.out.println("a*a + 2*a*b + b*b");
System.out.println(ans);

注意:(a+b)² = a² + b² + 2ab 但是,在 Java 中,这个表达式会写成,

a*a + 2*a*b + b*b

同样,其余公式的表达式:

  • (ab)²
a*a - 2*a*b + b*b
  • a²-b²
(a+b) * (a-b)
  • (a+b)³
a*a*a + b*b*b + 3*a*b *(a+b)
  • (ab)³
a*a*a - b*b*b - 3*a*b *(a-b)

很容易,对吧?

源代码

import java.util.*;

public class ExpansionFormulas {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        double ans;

        System.out.println("Choose the Formula");

        System.out.println("Enter 1 for (a+b)^2");

        System.out.println("Enter 2 for (a-b)^2");

        System.out.println("Enter 3 for (a^2 - b^2)");

        System.out.println("Enter 4 for (a+b)^3");

        System.out.println("Enter 5 for (a-b)^3");

        int ip = sc.nextInt();

        System.out.println("Enter the value of a and b");

        double a = sc.nextDouble();

        double b = sc.nextDouble();

        if (ip == 1) {

            ans = a * a + 2 * a * b + b * b;

            System.out.println("Working:");

            System.out.println("a*a + 2*a*b + b*b");

            System.out.println(ans);

        } else if (ip == 2) {

            ans = a * a - 2 * a * b + b * b;

            System.out.println("Working:");

            System.out.println("a*a - 2*a*b + b*b");

            System.out.println(ans);

        } else if (ip == 3) {

            ans = (a + b) * (a - b);

            System.out.println("Working:");

            System.out.println("(a+b) * (a-b)");

            System.out.println(ans);

        } else if (ip == 4) {

            ans = a * a * a + b * b * b + 3 * a * b * (a + b);

            System.out.println("Working:");

            System.out.println("a*a*a + b*b*b + 3*a*b *(a+b)");

            System.out.println(ans);

        } else if (ip == 5) {

            ans = a * a * a - b * b * b - 3 * a * b * (a - b);

            System.out.println("Working:");

            System.out.println("a*a*a - b*b*b - 3*a*b *(a-b)");

            System.out.println(ans);

        } else {

            System.out.println("Wrong Choice");

        }

    }

}

输出

见这里: