Показать сообщение отдельно
  #1 (permalink)  
Старый 13.06.2018, 00:44
Интересующийся
Отправить личное сообщение для Хомяк Посмотреть профиль Найти все сообщения от Хомяк
 
Регистрация: 13.06.2018
Сообщений: 11

Двумерный массив. Проверка есть ли подмасив массива в другом массиве
Здравствуйте, есть код
//id вопроса, вопрос, варианты ответа, комментарий, номер правильного ответа
	
	var data_array = [
	  [1,"Вопрос","Неверный ответ","Неверный ответ","Верный","ком1",3],
	  [2,"Вопрос","Неверный ответ","Верный","Неверный ответ","ком2",2],
	  [3,"Вопрос","Верный","Неверный ответ","Неверный ответ","ком3",1],
	  [4,"Вопрос","Неверный ответ","Неверный ответ","Верный","ком4",3],
	  [5,"Вопрос","Неверный ответ","Неверный ответ","Верный","ком5",3],
	  [6,"Вопрос","Верный","Неверный ответ","Неверный ответ","ком6",1],
	];

	
	
	var prov = []; //пустой массив, в который будут записывать используемые подмассивы массива
	var p=0; //подсчёт количества правильных ответов
	var i=0;
	

	
	while (i<3)  //повторение цикла три раза 0-2
	{
	var rand = data_array[Math.floor(Math.random()*data_array.length)]; //рандомный выбор подмассива
}


Суть состоит в том, чтобы выводить по 3 (в данном случае) рандомных вопроса из списка, при этом каждый вопрос должен появляться на экране по одному и они не должны повторяться

Функция рандома понятна. А вот как сделать так, чтобы вопросы не повторялись? Моё предположение: Создать еще один пустой массив, в который будут записываться использованные подмасивы. При каждом обороте цикла генерируется новый вопрос, а затем сравнивается со всеми подмассивами из второго массива, и если там нет такого элемента, то он выводится и заносится в этот дополнительный массив. Но как это реализовать, не подскажете?
Ответить с цитированием