Чётные и нечётные циферки

  • 4
  • Недоступна
Давайте определим, сколько четных цифр, а сколько нечетных в числе, введенном с клавиатуры. Если число делится без остатка на 2 (т. е. остаток равен нулю), значит оно четное. Увеличиваем на 1 счетчик четных цифр (статическая переменная even). Иначе число нечетное, увеличиваем счетчик нечетных цифр (статическая переменная odd).
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (248)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Алексей8 уровень, Санкт-Петербург
16 марта, 20:48
проинициализировал переменные(т.е. приравнял к нулю) считал строку и перевел в int далее есть замечательный метод
length()
, который возвращает длину строки. использовал его в цикле for.
for(int i = 0; i < s.length() ; i++)
и в теле ЕСЛИ(if) остаток от деления на 2 равен 0, то even++ А ЕСЛИ(else if) остаток от деления на 2 равен 1, то odd++ ну и в конце вывод с подчётами.
Alexey Dubinin6 уровень, Kernu
13 марта, 19:51
Народ в двух словах: через While разбиваете число на отдельные цифры. потом внутри пихаете if и else и там смотрите если число делиться на 2 без остатка %, то присваиваете одному значению, если нет то другому и все. Задача решена.
Max Rabinovich13 уровень, Санкт-Петербург
10 марта, 16:06
Решил через массив и счетчик. Ужасно бесят задачи, чет/нечет
АртемGeek11 уровень, Москва
4 марта, 11:29
Решил с помощью цикла while и вложенного в него If. Помогло разобраться: https://otvet.mail.ru/question/201892129 - ответ от asia4, 2-й способ Т.е. зацикливаем цикл на то, чтобы проверять остаток от деления, а каждый раз убирать по одной цифре с конца помогает выражение (число)/10 Соответственно if просто проверяет этот остаток на соответствие четности.
4 марта, 11:30
да, способ 2 соответствует текущему уровню
Александр7 уровень, Москва
6 марта, 09:03
Как думаете, число 1 на кончике (в начале числа) прописать? Т.к., вероятно (наверное) остаток от деления 1 на 2 равен 0? Я его прописал отдельно, типа если остаётся единица, нечетные++, понятно, всё работает, но вот не знаю, требовалось ли.
Yarek6 уровень, Львов
3 марта, 18:15
Ребята, нужна помощь с переводом int в char Не совсем понимаю как перевести все число Это нужно циклом делать или как?
Александр7 уровень, Москва
6 марта, 09:08
Я тоже думал про такое решение, но оно не такое изящное, как при делении на 10. Ну или на 10 в степени переменной-счетчика (тогда не нужно временную переменную заводить). Вообще, я так понял, что смысл такой: String перегоняется в массив char. Длина массива char - ограничение количества циклов. Дальше цикл, выбирающий по очереди элементы массива чар, ну или тупо сравнение иф/елс с сопоставлением со списком "1, 3, 5, 7, 9" и "0, 2, 4, 6, 8", либо элемент массива чар перегоняем в инт, и остатком делания на 2. Конец.
Алексей11 уровень, Москва
1 марта, 13:58
Я пока не начал решать. Подскажите, число которое мы вводим 4-значное или вообще любое целое число типа 17439934724574573?
Demid9 уровень
8 марта, 08:46
любое
Eduard Tantsev19 уровень, Санкт-Петербург
23 февраля, 20:37
Не понимаю, что не нравится валидатору. Подскажет кто-то что-нибудь дельное?
Roman Afonin16 уровень, Санкт-Петербург
26 февраля, 11:32
переменные объявлены, но не инициированы. Добавь even =0; odd = 0;
Eduard Tantsev19 уровень, Санкт-Петербург
26 февраля, 15:03
Спасибо, но не помогло)
Александр7 уровень, Москва
6 марта, 09:10
Фигня же, они по умлочанию 0, если не назначено значение.
Zhenya Ursol10 уровень, Киев
23 февраля, 20:24
Решил через цикл и charAt Циклом перебрал каждый char символ в строке, затем перевел его в int, а дальше уже просто разделил по модулю и в зависимости от условия увеличил счетчик 0dd и Even... Хорошая задача, реально нужно было подумать, и погуглить новую информацию чтобы прийти к правильному решению.
Denis7 уровень
21 февраля, 19:34
6 попыток...сломал голову...что же не так.....оказалось while(num<0)....жОсть...будьте внимательнее.
Aliaksandr7 уровень, Минск
15 февраля, 22:45
решил задачу, вроде бы считает правильно, но последний пункт не проходит "Выведенный текст должен соответствовать заданию" все перепробовал. пишу в Help пишет что вопрос не валидный. Что делать?
Сергей С18 уровень, Минск
18 февраля, 18:29
Ну так проверяйте свой System.out.println(), если действительно верно решили.
Fukkatsumi20 уровень, Одесса
13 марта, 17:28
та же фигня, хотя вывод как в задании