我正在练习数学,我想到我应该用 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();
变量a和b将包含用户输入的值。(注意:变量a和b是双精度数据类型,因为用户可能想要输入十进制数。)
现在,当你得到值时,你只需要输入公式并解决它。这适用于数学,但在 Java 中,您必须做更多的工作。
首先,有一个条件,它将执行用户输入的公式。
条件声明
例如,如果用户输入选项 1,程序将根据给定的a和b值计算 (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"); } } }
输出
见这里: