01.03.2017, 22:05
|
Новичок на форуме
|
|
Регистрация: 28.12.2016
Сообщений: 2
|
|
Нужна помощь по javascript
Нужно написать javascript код по двум заданиям, 2 задание используя button
1.Определить количество натуральных чисел из интервала от 100 до 500, сумма цифр которых
равна 15
2.Дано натуральное число. а) Получить всеего делители. б) Найти сумму его делителей. в) Найти сумму его четных делителей.г) Определить количество его делителей. д) Определить количество его нечетных делителей. е) Определить количество его делителей. Сколько из них четных? ж) Найти количеств о его делителей, больших d
|
|
01.03.2017, 23:31
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
Сообщение от rulerup
|
1.Определить количество натуральных чисел из интервала от 100 до 500, сумма цифр которых
равна 15
|
странная какая-то задача. Зачем писать код там, где решается устно? (5 + 6 + 7 + 8).
|
|
01.03.2017, 23:36
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Сообщение от Alexandroppolus
|
странная какая-то задача. Зачем писать код там, где решается устно? (5 + 6 + 7 + 8).
|
|
|
01.03.2017, 23:46
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Alexandroppolus,
какая связь между
Сообщение от Alexandroppolus
|
(5 + 6 + 7 + 8).
|
и числами 159,168,177,186,195,249,258,267,276,285,294,339,34 8,357,366,375,384,393,429,438,447,456,465,474,483, 492 ?
|
|
02.03.2017, 00:15
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
рони,
5 + 6 + 7 + 8 = количество этих чисел. 5 из них начинаются на 1, 6 на 2, и т.д. )
И непонятно, какое решение хочет видеть препод. Полный цикл от 100 до 500 с проверкой каждого числа (плохое решение, пример того как не надо делать), или по уму? По уму получается такой перебор, который можно в уме сделать за 20 секунд.
Я понимаю, если бы было, например, от 100 млн. до 500 млн. - это содержательная задача. А тут хрень какая-то.
Последний раз редактировалось Alexandroppolus, 02.03.2017 в 00:20.
|
|
02.03.2017, 00:28
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Alexandroppolus,
какая связь то? почему перебор плохое решение, какое может быть иное решение, кроме перебора.
|
|
02.03.2017, 00:29
|
|
Профессор
|
|
Регистрация: 16.09.2009
Сообщений: 253
|
|
Сообщение от Alexandroppolus
|
Я понимаю, если бы было, например, от 100 млн. до 500 млн. - это содержательная задача. А тут хрень какая-то.
|
Лучшe от 100! до 500! тогда уж
|
|
02.03.2017, 10:06
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
Сообщение от Rise
|
А как ты так устно посчитал?
|
ну, например, если первое цифра - 1, то вторая меняется от 5 до 9 включительно, чтобы вместе с третьей сумма была 14.
Для 2, 3, 4 - аналогично.
|
|
02.03.2017, 10:33
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,124
|
|
Alexandroppolus,
так есть алгоритм вашего вычисления или это доступно только вам? можно написать функцию, которая не будет перебор использовать?
|
|
02.03.2017, 11:25
|
|
Профессор
|
|
Регистрация: 25.10.2016
Сообщений: 1,012
|
|
рони,
ну примерно так:
var count = 0;
for (var i = 1; i <= 4; ++i) {
count += 4 + i;
/*
тут подразумевается такое:
var N = 15 - i; // оставшаяся сумма без первой цифры
var start = N - 9; // минимальное значение второй цифры
var end = 9; // максимальное значение второй цифры
var delta = end - start + 1; // сколько всего допустимых значений второй цифры
count += delta; // delta = 9 - (15 - i - 9) + 1 = 4 + i
*/
}
alert(count);
вот и весь перебор )
|
|
|
|