Я пытаюсь запрограммировать очень простую 3х3 магическую квадратную игру с использованием массивов.Проверка пользовательского ввода для игры с магическим квадратом/Сравнение массивов (определяемых пользователем и определяемых программистом)
Моя программа попросит пользователя трижды ввести три номера каждый раз (для верхней строки, средней строки, нижней строки), а затем значения будут отображаться. Проблема заключается в том, что я пытаюсь заставить мою программу проверить, введен ли пользователь правильные значения.
Я не уверен, как я это сделаю; Я думал просто объявлять фиксированные значения и просто делать сравнения/использовать условные операторы для сравнения ввода пользователя с этими постоянными значениями (объясняет массивы d, e, & f в моем коде ниже), но я также подумал, что это не совсем правильно, так как существует множество возможных значений, которые могут составлять магический квадрат, кроме значений, которые я собираюсь объявить, и, конечно же, я бы не хотел быть таким избыточным в своем коде.
Я еще не знаком с массивами, я новичок в Java. Я не уверен, что здесь можно спросить этот вопрос, но я надеюсь, что кто-то все равно ответит. Это очень важно, поскольку это школьный проект.
Я знаю, что цифры должны иметь в общей сложности 15 по горизонтали, по вертикали и по диагонали. И я понятия не имею, как это сделать.
Хотя, я думаю, я бы просто придерживаться просто сделать условные операторы (если никто не ответит на мой вопрос выше), так как я только что нашел источник, который имеет все 3x3 магические квадраты, так что если кто-то может просто научить меня как сравнивать определяемые пользователем массивы & программируемые массивы, это было бы хорошо.
Я написал несколько кодов для ввода пользовательского ввода.
import java.util.*;
class arrayy
{
public static void main(String args[])
{
int[] a=new int[3];
int[] b=new int[3];
int[] c=new int[3];
int[] d={8,1,6};
int[] e={3,5,7};
int[] f={4,9,2};
Scanner sc=new Scanner(System.in);
System.out.println("Please enter the 3 numbers for the top row: ");
for(int j=0;j<3;j++)
a[j]=sc.nextInt();
System.out.println();
System.out.println("Please enter the 3 numbers for the middle row: ");
for(int j=0;j<3;j++)
b[j]=sc.nextInt();
System.out.println();
System.out.println("Please enter the 3 numbers for the bottom row: ");
for(int j=0;j<3;j++)
c[j]=sc.nextInt();
System.out.println("Your entry: ");
for (int i=0;i<a.length;i++)
System.out.print(a[i]+" ");
System.out.println();
for (int i=0;i<a.length;i++)
System.out.print(b[i]+" ");
System.out.println();
for (int i=0;i<a.length;i++)
System.out.print(c[i]+" ");
System.out.println();
System.out.println();
}
}