Я пытаюсь найти наибольшее число в массиве из 10 чисел. Вот мой код:Как получить наибольшее число в массиве?
public static void getNumber() {
int NumbersArray[] = new int[11];
int num1;
int num2;
int largestNumber = 0;
Scanner scanner = new Scanner(System.in);
for(int i=1; i<11; i++){
System.out.println("Enter number " + i);
int no1 = scanner.nextInt();
NumbersArray[i] = no1;
}
scanner.close();
for(int i=1; i<11; i++)
{
System.out.println(NumbersArray[i]);
num1 = NumbersArray[i];
for(int j=10; j>0; j--)
{
num2 = NumbersArray[j];
if(num1>num2){
largestNumber = num1;
}
}
}
System.out.println("the largest number is " + largestNumber);
}
Я нашел реальный простой soultion к этому here.
Но причина, по которой я публикую это, - выяснить, какую ошибку я сделал. Первая часть получает 10 номеров от пользователей, а вторая часть - мой код, чтобы найти наибольшее число.
Вы можете значительно упростить код, проверив, какой номер является самым большим. Пользователь вводит значения, устраняя второй/двойной цикл. – MadProgrammer
. Было бы проще объяснить ваши ошибки, если бы вы объяснили, как вы думаете, этот код работает (или должен работать). Как вы думаете, что происходит в каждом из ваших циклов? – Pshemo
всего лишь небольшое оповещение: массивы в java основаны на 0. Это означает, что первым элементом в массиве является 'array [0]', а не 'array [1]' – Paul