У меня есть код, который сначала генерирует массив со 100 элементами, а затем помещает произвольно сгенерированные числа в каждый элемент. Я пытаюсь выполнить поиск номера, и если он найден, распечатайте его индекс. код, который я до сих пор:Поиск числа в массиве java
import java.util.Scanner;
public class Lab01
{
public static void main(String[] args)
{
int[] nums = new int[100];
for (int i = 0; i < nums.length; i++)
{
nums[i] = (int)((Math.random() * 100) + 1);
System.out.print(nums[i] + " , ");
}
System.out.println();
Scanner input = new Scanner(System.in);
int num;
System.out.println("What number would you like to search for?");
num = input.nextInt();
boolean found = false;
for (int i = 0; i < nums.length; i++)
{
if (num == nums[i])
{
found = true;
break;
}
if (found)
{
System.out.println("That number was found at index" + i);
break;
}
else
{
System.out.println("That number was not found.");
break;
}
}
}
}
Я положил в инструкции печати, чтобы увидеть значение, так что я мог убедиться, что он работает, но он всегда возвращается «Не найден». Что мне здесь не хватает?
Вы не можете гарантировать, что номер входа будет равен ** произвольно ** сгенерированным номерам. – Atri
Предлагаю создать случайный генератор: «Случайный случайный = новый случайный()» и использовать его с верхней границей: 'nums [i] = random.nextInt (100) + 1'. Кроме того, закройте свой сканер, когда закончите, используя его: 'input.close()'. – Bifz