import java.util.Scanner;
public class Main {
static double a, b, c, x, y, AOS;
public static void main(String[] args) {
Main.getA();
}
public static void getA() {
Scanner inputA = new Scanner(System.in);
System.out.println("Input variable 'a'");
a = inputA.nextDouble();
inputA.close();
System.out.println("A: " + a);
Main.getB();
}
public static void getB() {
Scanner inputB = new Scanner(System.in);
System.out.println("Input variable 'b'");
b = inputB.nextDouble();
inputB.close();
System.out.print("B: " + b);
Main.getC();
}
public static void getC() {
Scanner inputC = new Scanner(System.in);
System.out.println("Input variable 'c'");
c = inputC.nextDouble();
inputC.close();
System.out.print("C: " + c);
Main.getAOS();
}
public static void getAOS() {
AOS = (-b + Math.sqrt((b*b)-4*a*c)) / 2*a;
System.out.println("AOS: " + AOS);
Main.getPoint1();
}
public static void getPoint1() {
x = AOS;
y = (a*(x*x)) + (b*x) + c;
System.out.println("Origin: (" + x + "," + y + ")");
Main.getPoint2();
}
public static void getPoint2() {
x = AOS + 1;
y = (a*(x*x)) + (b*x) + c;
System.out.println("1: (" + x + "," + y + ")");
Main.getPoint3();
}
public static void getPoint3() {
x = AOS - 1;
y = (a*(x*x)) + (b*x) + c;
System.out.println("2: (" + x + "," + y + ")");
Main.getPoint4();
}
public static void getPoint4() {
x = AOS + 2;
y = (a*(x*x)) + (b*x) + c;
System.out.println("3: (" + x + "," + y + ")");
Main.getPoint5();
}
public static void getPoint5() {
x = AOS - 2;
y = (a*(x*x)) + (b*x) + c;
System.out.println("4: (" + x + "," + y + ")");
}
}
这是我的代码。我试图让用户输入选择变量a、b和c的值,这样程序就可以运行方程。数学工作,但是我在第一次输入后得到一个错误。
当您关闭扫描仪时,您也会关闭底层流(在您的case System.in中),然后即使尝试从另一个扫描仪实例访问它,您也无法再次读取它。
因此,最简单的方法是只使用一个扫描仪对象,而不是许多。将代码更改为:
static double a, b, c, x, y, AOS;
static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
Main.getA();
}
public static void getA() {
System.out.println("Input variable 'a'");
a = scanner.nextDouble();
System.out.println("A: " + a);
Main.getB();
}
public static void getB() {
System.out.println("Input variable 'b'");
b = scanner.nextDouble();
System.out.print("B: " + b);
Main.getC();
}
public static void getC() {
System.out.println("Input variable 'c'");
c = scanner.nextDouble();
System.out.print("C: " + c);
Main.getAOS();
}
public static void getAOS() {
AOS = (-b + Math.sqrt((b*b)-4*a*c)) / 2*a;
System.out.println("AOS: " + AOS);
Main.getPoint1();
}
public static void getPoint1() {
x = AOS;
y = (a*(x*x)) + (b*x) + c;
System.out.println("Origin: (" + x + "," + y + ")");
Main.getPoint2();
}
public static void getPoint2() {
x = AOS + 1;
y = (a*(x*x)) + (b*x) + c;
System.out.println("1: (" + x + "," + y + ")");
Main.getPoint3();
}
public static void getPoint3() {
x = AOS - 1;
y = (a*(x*x)) + (b*x) + c;
System.out.println("2: (" + x + "," + y + ")");
Main.getPoint4();
}
public static void getPoint4() {
x = AOS + 2;
y = (a*(x*x)) + (b*x) + c;
System.out.println("3: (" + x + "," + y + ")");
Main.getPoint5();
}
public static void getPoint5() {
x = AOS - 2;
y = (a*(x*x)) + (b*x) + c;
System.out.println("4: (" + x + "," + y + ")");
}
}
您可能还希望在不关闭系统的情况下关闭扫描仪。正在进行中。在这种情况下,包装系统。在CloseShieldInputStream中,如下所述
问题内容: 最近有人问我这在python中是什么意思: 我不知道。我以前从未见过。我检查了文档,没有类似的东西。一个人的建议是它是静态类型声明,但是在文档中也绝对没有任何内容。 有了以上,如果我 失败了 如果我可以,并且type(char)的结果是。但是它不能是静态声明,因为我可以并且type(char)变为。 所以我来这里是为了收集许多SO霸主的智慧。这意味着什么? 问题答案: 您正在查看变量的
我正试图做一个课堂作业,但我遇到了一个问题,我找不到解决方案。我的主方法中有一个变量,名为passwd。我让一个用户输入一个可能密码,输入被存储在变量中。然后检查password变量的长度,以确保它符合长度要求。然后我想让另一个方法chat检查变量的每个字符,看看它是否是一个数字。
问题内容: 当我使用上面的语句时,我没有得到错误(我没有使用结尾),但是当我使用下面的语句时,我得到了这个错误: int类型的文字3244444444超出范围 如果使用,则没有错误。 这是什么原因呢?对于长变量,不强制使用l。 问题答案: 被解释为文字整数,但不适合32位变量。它必须是一个 字面量long值 ,因此它需要一个or或末尾: 更多信息: 原始数据类型,特别是 默认值 和 文字 部分。
问题内容: 我偶然发现了一个奇怪的问题,下面的代码无法编译: 错误(代码是linter推荐的代码)。: 注意,确实使用了该变量。 但是,如果我添加了else块-一切都会按预期编译: 这看起来像是编译器中的错误,还是一个已知问题?任何想法?(我正在使用go 1.11) 编辑:到目前为止的所有被告。按照:https : //golang.org/ref/spec#Short_variable_decl
问题内容: 是否可以在Gradle中声明一个可在Java中使用的变量?基本上,我想在build.gradle中声明一些var,然后在构建时(显然)获取它。就像C / C ++中的预处理器宏一样… 一个声明的例子就是这样: 有没有办法做这样的事情? 问题答案: 生成Java常量 你可以使用 产生Android资源 你可以使用或以通常的方式访问它们
问题内容: 我正在尝试对MySQL 5.0中的变量进行一些简单的操作,但是我无法完全正常工作。我已经看到了很多(非常!)DECLARE / SET的不同语法,我不确定为什么……在任何情况下,我都可能会混淆它们/选择错误的语法/混合它们。 这是一个失败的最小片段: 我也尝试过使用BEGIN … END包装它;并作为一个程序。在这种情况下,MySQL Workbench会帮助我:第一行显示“’)’附近