gpt4 book ai didi

java - 读取int数组并检查它是否已排序

转载 作者:行者123 更新时间:2023-12-02 11:18:22 25 4
gpt4 key购买 nike

我有一个int array,我试图弄清楚如何制作该程序,以便通过将值分配给 int 数组的元素来存储用户输入的整数s。我试图放置代码,以便它在执行 10 次的循环(while 或 for 循环)中接受来自用户的整数。然后使用代码检查整数序列,以查看它在另一个使用两个单独循环执行 9 次的循环中是否不递减。下面是我必须形成这个“检查器”的内容。

class ArrayRecorder {
public static void main(String[] args) {
int Array[] = new int[10];
System.out.println("Enter ten integers seperated by spaces, then press return after. ");
for(int count = 0; count < 10; count++)
Array[count] = A3Helper.nextInteger();
for (int count = 0; count < 10; count++ )
System.out.print(Array[count]+ " ");

抱歉,如果这看起来是一个愚蠢的问题,我想我想太多了。我尝试修改代码,但无法弄清楚,下面是我已经开始的。

class ArrayChecker {
public static void main(String[] args) {
int Array[] = new int[10];
System.out.println("Enter ten integers seperated by spaces, then press return after. ");
for(int count = 0; count < 10; count++)
Array[count] = A3Helper.nextInteger();
System.out.print("List is in order");

这是程序的输入和输出应该是什么样子的示例喜欢:输入十个以空格分隔的整数,然后按回车键。10 3 0 -4 200 80 -95 87 23 -67列表未按顺序排列。

这是另一个例子:输入十个以空格分隔的整数,然后按回车键。-5 -4 -3 0 1 2 2 3 10 11列表按顺序排列

还有 A3Helper 代码:

import java.util.Scanner;
class A3Helper {
static Scanner keyboard = new Scanner(System.in);
static int nextInteger() {
return keyboard.nextInt();
}

}

最佳答案

只需检查每个连续的数字是否大于之前的数字。如果不是,您只需更改一个 boolean 值来指示数组是否按顺序排列,然后打印出不同的字符串。

boolean inOrder = true;
for (int count = 0; count < 9; count++) {
if (Array[count + 1] < Array[count]) {
inOrder = false;
break;
}
}

if (inOrder) {
System.out.println("Array is in order.");
} else {
System.out.println("Array is not in order.");
}

请注意,我们仅循环遍历数组索引 0 到 8,而不是 9,因为否则 Array[count + 1] 将导致 ArrayIndexOutOfBoundsException

关于java - 读取int数组并检查它是否已排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50107386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com