Я создаю проект бегун лабиринт для школы. Пользователь определяет длину и ширину массива, а затем вводит значения опасности в указанный массив. Я прошу пользовательский ввод в одну строку; группа целых чисел, разделенных пробелами, представляющими значения опасности. Затем пользователь решает, с чего начать, отмеченный *. После этого ИИ решает, какая из координат вокруг него имеет наименьшую «опасность», и затем перемещается туда, стараясь не двигаться в координате, в которой он уже находился.
Я использую цикл for для заполнения двух двумерных массивов. Один из них String[][]
, а другой int[][]
. Причина этого в том, что я использую String[][]
для печати, поскольку мне нужно изменить один из int
s на *, чтобы отметить местоположение пользователя. Я использую int[][]
, чтобы сделать математику, так как я могу использовать сравнения (<
, >
и т. Д.), Чтобы решить, куда двигаться. Я не могу заставить циклы for
использовать только пользовательские вводы один раз. Пользователь должен был бы ввести свои предпочтительные значения опасности дважды, чтобы код продолжил работу. Любой совет?
for(int i = 0; i < row; i++) //for loop to repeat question for how ever many rows
{
System.out.print("Enter the danger in row " + i + ", seprated by spaces: " ); //what's the danger of this row
for(int j = 0; j < column; j ++) //for every row, column space
{
mazeMath[i][j] = keyboard.nextInt();
mazePrint[i][j]=keyboard.next();
}
}
Например: если пользователь решит, что в массиве 7 столбцов; пользователь должен будет ввести свои предпочтительные значения опасности дважды, по 7 раз каждый. Я предполагаю, что это должно заполнить оба массива, но я не знаю, как решить проблему.
Спасибо!
Hunter