![Использование данных Excel для лотереи](https://rvso.com/image/1336325/%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20Excel%20%D0%B4%D0%BB%D1%8F%20%D0%BB%D0%BE%D1%82%D0%B5%D1%80%D0%B5%D0%B8.png)
У меня есть таблица Excel, в которой указаны имена пользователей, фамилии и количество правильных ответов на ежедневные вопросы викторины за последний месяц. Я хочу выбрать победителя с помощью системы розыгрыша, где пользователи получают по одному билету за каждый вопрос, на который они ответили правильно. У меня есть способ сделать это в Java, но я хотел бы сделать это в Excel, если это возможно. Вот мой код Java, если это поможет объяснить:
public static void main(String[] args) throws FileNotFoundException {
File file = new File("TriviaParticipantsList.txt");
Scanner scanner = new Scanner(file);
int x = 0;
int j = 0;
int i = 0;
while(scanner.hasNextLine())
{
String line = scanner.nextLine();
Scanner scan = new Scanner(line);
i = scan.nextInt();
String name = scan.nextLine();
if(line.charAt(0)==0)
{
//do nothing if no questions were answered
}
else
{
for(j=0; j<i; j++)
{
System.out.print(j+x); //Print out "ticket number"
System.out.println(" " + name); //Print out owner name of ticket
}
}
x=x+i;
}
scanner.close();
System.out.println(x); //Verify correct number of entries
int winner = (int) (Math.random()*x); //Select random number based on number of entries
System.out.println(winner); //Display value, look through list to find who number belongs to!
}
Любая помощь будет высоко оценена!
решение1
Я мог бы представить (в смысле «я не пробовал»), что накопленная сумма правильных ответов в сочетании с поиском по случайному числу могла бы решить эту проблему.
Name | Correct | Sum
P1 3 3
P2 2 5
P3 4 9
Создайте ячейку со случайным числом и, возможно, кнопку для запуска пересчета или заполнения ячейки формулой для случайного числа или что-то в этом роде.
Затем вы должны быть в состоянии сделать поиск, который возвращает "P2", например, если вы вытащили номер 4. Редактировать: Проверьте справку по функции поиска, как заставить ее возвращать правильный, я считаю, что она может сделать то, что вы хотите. В противном случае вам, возможно, придется обойти это с помощью вспомогательного столбца.
Случайное число, конечно, должно находиться в диапазоне от 1 до максимального значения кумулятивной суммы.
Надеюсь, это как-то поможет ;-)