Я новичок во флаттере. Я пытаюсь создать простую программу сложения, которая будет генерировать случайные числа для добавления друг к другу, а также создавать 4 случайных варианта ответа, из которых один будет правильным ответом. Но проблема иногда в похожих вариантах и я не хочу исправлять варианты на результат.
Ниже мой код. кто-нибудь может мне помочь?
class _StartGameState extends State<StartGame> {
int inp1, inp2;
GenerateQuestion g = new GenerateQuestion();
int num1, num2, num3, num4;
int no1, no2, no3, no4;
int pos;
int res;
Map answers;
bool flag = true;
void getNum() {
num1 = g.generateNum();
num2 = g.generateNum();
num3 = g.generateNum();
num4 = g.generateNum();
inp1 = g.generateValue();
inp2 = g.generateValue();
// this method returns value from 0 to 3
pos = g.answerPosition();
res = inp1 + inp2;
switch (pos) {
case 0:
num1 = res;
break;
case 1:
num2 = res;
break;
case 2:
num3 = res;
break;
case 3:
num4 = res;
break;
}
if (res == num1 || res == num2 || res == num3 || res == num4) {
if (num1 != num2 &&
num1 != num3 &&
num1 != num4 &&
num2 != num3 &&
num2 != num4 &&
num3 != num4) {
setState(() {
no1 = num1;
no2 = num2;
no3 = num3;
no4 = num4;
});
}
}
}
}
GenerateQuestion — это отдельный файл класса. который имеет простые методы, которые создают случайный объект с диапазоном и возвращают значение;
Мой интерфейс похож на введите здесь описание изображения