Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите решить задачу (https://javascript.ru/forum/misc/53199-pomogite-reshit-zadachu.html)

Sirena007 24.01.2015 19:33

Помогите решить задачу
 
Характером натурального числа назовем сумму всех его делителей, не равных единице и самому числу. Характером простого числа будем считать нуль. Написать программу, которая вычисляет характер числа. Нужно что б на html страничке все выводилось. Я понять не могу как вообще сделать

caetus 24.01.2015 19:46

функция возвращает суму всех чисел, которые делят число (a) без остатка !
то что нужно ?
function num (a) {
var n  = 0;
for(var i = 2; i < a; i++)  if(a % i == 0) n+=i;

return n;
}

Erolast 24.01.2015 19:48

Нужно перебрать все числа от одного до искомого числа (исключая его само) и, если итерируемое значение является делителем числа, прибавлять к результату. Как проверить, является ли одно число делителем другого? Остаток от деления должен быть равен нулю.

рони 24.01.2015 23:51

:write: с небольшой оптимизацией ...
<script>
function num(a) {
    var n = 0,
    l = Math.round(a / 2);
    for (var i = 2; i <= l; i++)
        if (a % i == 0) n += i;
    return n
};
document.write(num(6))
 </script>


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