Исходя из вот этих проверок:
if ( ["01", "06", "11","16","21","26","31","36"].indexOf(question) !== -1 ) { st01+=1; }
if ( ["02", "07", "12","17","22","27","32","37"].indexOf(question) !== -1 ) { st02+=1; }
if ( ["03", "08", "13","18","23","28","33","38"].indexOf(question) !== -1 ) { st03+=1; }
if ( ["04", "09", "14","19","24","29","34","39"].indexOf(question) !== -1 ) { st04+=1; }
if ( ["05", "10", "15","20","25","30","35","40"].indexOf(question) !== -1 ) { st05+=1; }
переменные st01, st02, st03, st04, st05 могут принимать значения в диапазоне от 0 до 8! не больше!
потом ты их передаешь в функцию проверки результата:
result += "Предметно-действенное - "+ get_result_test02_dop(st01)+"\n";
result += "Абстрактно-символическое - "+ get_result_test02_dop(st02)+"\n";
result += "Словесно-логическое - "+ get_result_test02_dop(st03)+"\n";
result += "Наглядно-образное - "+ get_result_test02_dop(st04)+"\n";
result += "Креативность (творческое) - "+ get_result_test02_dop(st05)+"\n";
а в этой функции самое первое условие:
if (n<37)
return "чуждый Вам стиль.";
т.е. если n меньше 37 вернуть "чуждый Вам стиль.";
а оно естественно меньше, т.к. максимум может быть 8. поэтому результат всегда один.
я не знаю по какому принципу считается результат, но на лицо какая-то путаница с условиями