使用Java编写程序的最简单方法是读取输入并打印出最小和最大的数字。偶数和奇数输入的数量怎么样?
For循环是必需的,它需要允许用户退出循环。这是我到目前为止所得到的(可能是错误的):
import java.util.Scanner;
public class E62a
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("Enter numbers");
int number = in.nextInt();
int number2 = in.nextInt();
for(int counter = counter % 2; counter <= 6; counter++)
{
System.out.println(number);
System.out.println(number2);
}
}
}
答案 0 :(得分:1)
最简单的方法是什么(...)
在编程中,几乎没有“最简单的方法”来做任何需要多个命令的事情。 “简单”的含义取决于具体情况。
如何编写将读取(控制台)输入的Java程序?
你已经找到了办法:
Scanner in = new Scanner(System.in);
//...
in.nextLine(); //or nextInt(), or whatever else...
还有......
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//...
String input = br.readLine();
...这是我通常使用的。可能还有其他方法......
如何找到/打印出最小和最大的数字(两个数字之间)?
一个简单的IF-THEN-ELSE
结构就行了。在Java中,这将是:
if (numA <= numB) { min = numA; max = numB; } else {min = numB; min = numA; }
您还可以使用Java(非常干净和方便)的内置方法:
min = Math.min(numA,numB); max = Math.max(numA,numB);
您已经知道如何打印... System.out.print()
或.println()
。
偶数和奇数输入的数量是多少?
我不确定你的意思,但如果你的意思是多个输入(超过两个),你首先要决定用户如何输入输入;比如在一行中,用空格或逗号或其他类型的separator character
分隔,或者作为多行,在这种情况下,您需要trigger string
来告诉程序输入已经结束和处理应该继续/遵循。
对于单行+分隔符,您的程序将是干净且高度可维护的,因为输入的处理几乎完全与接口(控制台)分离,但您需要解析结果String将输入彼此分开。
如果是多行+触发器,您可以在键入时使用单个输入填充数组,但是控制台会变得非常混乱,并且与处理相关性更大。
最后但同样重要的是,学习编程语言的最佳方法是:
欢呼,祝你好运!
答案 1 :(得分:0)
你想用int counter = counter % 2
做什么?这基本上告诉程序,&#34;创建一个等于其当前值的余数除以2的整数。&#34;这是不可能的。 counter = counter % 2
仅在先前已初始化counter
时才有效。
您的for
循环未向用户提供手动退出的方法。要允许用户手动退出循环,您需要编写它以接受循环内的用户输入并提供退出条件。以下是您如何做到这一点的一个例子:
Scanner in = new Scanner(System.in);
Integer input;
ArrayList<Integer> numbers = new ArrayList<>();
for (int i=0; i<=6; i++) {
System.out.print("Enter a number or enter -1 to exit: ");
input = in.nextInt();
if (input != -1) {
numbers.add(input);
} else {
break;
}
}
这将允许用户输入最多六个数字并可以选择退出。由于此示例中的numbers
是ArrayList
,因此可以使用get()
函数从中检索项目。例如,System.out.println(numbers.get(0))
会显示添加到numbers
的第一个数字。
确定最小和最大数字可以这样做:
int largest = -1;
int smallest = -1;
for (int i=0; i<numbers.size(); i++) {
if (numbers.get(i) > largest) {
largest = numbers.get(i);
}
if ((numbers.get(i) < smallest) || (smallest == -1)) {
smallest = numbers.get(i);
}
}
这部分代码将计算偶数和奇数输入的数量:
int evenNumbers = 0;
int oddNumbers = 0;
for (int i=0; i<numbers.size(); i++) {
if ((numbers.get(i) % 2) == 0) {
evenNumbers++;
} else {
oddNumbers++;
}
}