Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Массив и увеличение значения Элемента массива (https://javascript.ru/forum/misc/71385-massiv-i-uvelichenie-znacheniya-ehlementa-massiva.html)

Romzes 14.11.2017 20:16

Массив и увеличение значения Элемента массива
 
Доброго времени суток всем ГУРУ!
Я новичок в javascript! Пишу программку и столкнулся с такой проблемой:

при выполнении условия (в массиве refferee[j][i] есть совпадение значения например '1') нужно значение второго массива увеличить на один.

Вопрос: такая конструкция рабочая r[j][i]++; ???

вот листинг:

for (var j=0; j<sumparticipant; j++)
{
	
		for (var i=0; i<sumrefferee; i++)
		{
   			switch (refferee[j][i]) 
							{
							case 1: r[j][i]++;
							case 1: case 2: r[j][i]++;
							case 1: case 2: case 3: r[j][i]++;
							case 1: case 2: case 3: case 4: r[j][i]++; 
							case 1: case 2: case 3: case 4: case 5: r[j][i]++; 
							case 1: case 2: case 3: case 4: case 5: case 6: r[j][i]++;
							}
	 
	   	
            }	
}



sumparticipant - число заданное заранее;
sumrefferee - число заданное заранее;
refferee[j][i] - массив чисел полученный опросом полей input по getElementsByName (проверял внутри есть данные);
r[j][i] - массив счетчик, который должен посчитать количество чисел в массиве refferee[j][i].

Голова пухнет, по моему я застрял именно на счетчике. Прошу опытных пользователей о помощи!

Заранее спс!

рони 14.11.2017 20:37

:-? ничего не понимаю

Lion777 14.11.2017 21:01

Цитата:

Вопрос: такая конструкция рабочая r[j][i]++; ???
смотря для чего, таким образом ты перезапишешь значение в массиве на +1.

Romzes 14.11.2017 21:17

да, но почему то там остается 0 ане 1

Romzes 14.11.2017 21:20

В целом задача: мне нужно посчитать сколько в строке refferee[1][i] значений 1, потом 1или2, потом 1 или2или3 и т.д.

Но походу моих знаний JS не хватает чтоб построить код (((

Lion777 14.11.2017 21:37

мне не совсем понятно что тебе нужно )), покажи пример строк и что надо с ними сделать, а так тяжело понять, ты явно что-то не то делаешь...

Romzes 14.11.2017 21:56

Вложений: 1



Столбцы a,b,c,d,e - входящие данные, согласно строк 11,21,31..61 выставляются цыфры от 1 до 6 (6 - количество строк, может быть и 8, и более, тогда будет выставляться до 8 или более)

В столбцы 1,1-2,1-3..1-6 нужно посчитать согласно строки сколько цыфр 1,1ил2, 1или2или3... .

по сути это определения результатов выступления:
Строки количество желающих выступить (в примере 6, поэтому 6 мест),
Столбцы с судьями (a,b,c,d,e) и они тоже могут быть 5, могут более или менее, которые выставляют балы (от 1 до 6-или сколько участников).

В примере показано как должно быть посчитано.


Для 6 строк и 5 судей статически я написал громоздкий код. Теперь надо привести код так, чтоб я не зависил от количества выступающих (а вдруг их 40 или 100) и количества судей.

Romzes 14.11.2017 22:09

case - тоже на ограниченное количество выступлений - 6. пока не знаю как на неограниченное поставить

рони 14.11.2017 22:28

Romzes,
а зачем считать столько 1 и т.д. может сразу сумму баллов?

Romzes 14.11.2017 22:31

так определено правилами, арифметически не определить.
По сути это не балы, а места. тоесть судья выставляет места. программа должна посчитать кому судьи больше отдали первых, вторых и .т.д. мест. поэтому нужно количество первы, первы ивторых мест, первых и вторых и третих месть и т.д. короче правила дебильные, но по ним надо получить результат


Часовой пояс GMT +3, время: 11:41.