Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.02.2018, 15:34
Новичок на форуме
Отправить личное сообщение для vanya_xa Посмотреть профиль Найти все сообщения от vanya_xa
 
Регистрация: 12.02.2018
Сообщений: 5

является ли сумма цифр данного четырехзначного числа четным числом
help please

Написать программу для вывода на экран сообщения о том, является ли сумма цифр данного четырехзначного числа четным числом.
Примечание: При написании программы использовать разбиение целого числа на цифры с помощью операций / и %.
Исходные данные: целое число .
Данные, выводимые на экран: сообщение «Сумма цифр четная» или «Сумма цифр НЕчетная». (В задаче использовать условный оператор if.)
Ответить с цитированием
  #2 (permalink)  
Старый 12.02.2018, 15:46
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

var number = prompt('Введите число N; 999 < N < ' + 1e4, Math.round(Math.random() * 1e4 + 1e3));
if (number === null || number.length != 4)
    alert('Incorrect input data');
else
    alert('Сумма цифр ' + ([
        number / 1000,
        number % 1000 / 100,
        number % 100 / 10,
        number % 10
    ].reduce((t, c) => t + Math.floor(c), 0) % 2 != 0 ? 'НЕ' : '') + 'четная');

Последний раз редактировалось Nexus, 12.02.2018 в 16:23.
Ответить с цитированием
  #3 (permalink)  
Старый 12.02.2018, 17:00
Новичок на форуме
Отправить личное сообщение для vanya_xa Посмотреть профиль Найти все сообщения от vanya_xa
 
Регистрация: 12.02.2018
Сообщений: 5

Nexus спасибо
Nexus спасибо))
Ответить с цитированием
  #4 (permalink)  
Старый 12.02.2018, 17:01
Новичок на форуме
Отправить личное сообщение для vanya_xa Посмотреть профиль Найти все сообщения от vanya_xa
 
Регистрация: 12.02.2018
Сообщений: 5

Nexus,
спасибо
Ответить с цитированием
  #5 (permalink)  
Старый 12.02.2018, 17:06
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

var n = 1234;
var s = n.toString().split('').reduce(function(sum, curr) {return sum + +curr;
}, 0);
alert((s % 2 != 0? 'НЕ' : '') + 'четная');
Ответить с цитированием
  #6 (permalink)  
Старый 12.02.2018, 17:12
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

Dilettante_Pro, в задаче нужно было деление (мат. операция) использовать, поэтому в моем коде такие извращения.
Ответить с цитированием
  #7 (permalink)  
Старый 12.02.2018, 17:29
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Nexus
поэтому в моем коде такие извращения
Делением по модулю проверять четность тоже извращение.
Кто такие задание придумывает, найти и руки вырвать.
Ответить с цитированием
  #8 (permalink)  
Старый 12.02.2018, 17:33
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Nexus,
Да, у меня деления нет

Вариант с делением
var n = 1234;
var s = n.toString().split('').reduce(function(sum, curr) {return sum + curr / 1;
}, 0);
alert((s % 2 != 0? 'НЕ' : '') + 'четная');
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск