Показать сообщение отдельно
  #20 (permalink)  
Старый 15.11.2017, 14:12
Интересующийся
Отправить личное сообщение для Romzes Посмотреть профиль Найти все сообщения от Romzes
 
Регистрация: 14.11.2017
Сообщений: 23

Вот что у меня получилось, правда только для одного участника. сейчас буду доделывать для много участников

var sumparticipant=6; //количество участников
			var	sumrefferee=5;    //количество судей
				
				
			
		var reffereeGet = document.getElementsByName('refferee');
		
		var refferee=new Array();
		    	
		
// Присваеваем все input в массив refferee[j][i]

metka1:
for (var j=0; j<sumparticipant; j++)
{
	refferee[j]=new Array();
		for (var i=0; i<sumrefferee; i++)
		{
			
			
			
			refferee[j][i]=reffereeGet[i].value;
			
			 
		   if (typeof refferee[j][i] == 'undefined' || refferee[j][i] == null || refferee[j][i] == 0) 
		   {
			   var arb=i+1;
		   alert ('Судья '+arb+' не определил место'); break metka1;
		   }
			
		
		}
}


// сортируем масив 1,2,3,4,5 и.т.д.			

function compareNumeric(a, b) {
  if (a > b) return 1;
  if (a < b) return -1;
}

refferee[0].sort(compareNumeric);



//считаем количество повторов
var result = {};

for (var i = 0; i < sumrefferee; ++i)
{
    var a = refferee[0][i];
    if (result[a] != undefined)
        ++result[a];
    else
        result[a] = 1;
}

var result1 = {};
// выводим результат в масив result1[i]
  for (var key in result)
  	{	
	for (var i=1; i<sumparticipant+1; i++)
		{
		   
		   if (i==key)
		   {
		   
		   		   result1[i]=result[key];
		   		   
		   }
		   
		}
			
	}


// заменяем пустые значения на 0
	
	for (var i=1; i<sumparticipant+1; i++)
		{
		   
		   if (typeof result1[i] == 'undefined' && result1[i] == null) 
		   {
			result1[i]=0;   
		   }
		}
	
// суммируем предедущее значение с настоящим 2+1
for (var i=2; i<sumparticipant+1; i++)
		{
		   
		   	   
		   	result1[i]=result1[i-1]+result1[i];
		   		   
		  
		   
		}	
	
//выводим результаты	
for (var i=1; i<sumparticipant+1; i++)
		{
		document.getElementsByName('r')[i-1].value=result1[i];
	
		}



Код конечно громоздкий, но я новичек, простите если что
Ответить с цитированием