Проверить, является ли введенное число четным или нечетным. Java
Для проверки, является ли введенное число четным или нечетным, можно использовать оператор деления (%). Если число делится на два без остатка, то оно четное, в противном случае – нечетное.
Вот пример решения на Java:
public class CheckEvenOddNumber public static void main(String[] args) Scanner scanner = new Scanner(System.in);
System.out.print(«Введите целое число: «);
int number = scanner.nextInt();
if(number % 2 == 0) System.out.println(number + » является четным числом»);
> else System.out.println(number + » является нечетным числом»);
>
>
>
Первым шагом мы создаем объект класса Scanner для ввода с клавиатуры. Затем запрашиваем у пользователя ввод целого числа и сохраняем его в переменной number типа int.
Далее, используя оператор деления (%), проверяем остаток от деления числа на два. Если остаток равен нулю, то число четное, и мы выводим соответствующее сообщение на экран. В ином случае число нечетное, и мы выводим другое сообщение.
Этот код будет работать как для положительных, так и для отрицательных чисел.
Переписать другими словами
Написать сочинение по запросу
Или попробуйте другие режимы нейросети.
Нейросеть онлайн находится всегда под рукой и готова помочь решить задачу! Используйте ее, чтобы быстро проверять, является ли введенное число четным или нечетным — просто введите число на нашем сайте, и нейросеть покажет вам результат мгновенно!
Наша нейросеть пишет текст с высокой точностью и надежностью, что дает вам определенность в решении задачи. Будь то профессиональный программист или студент, нейросеть онлайн поможет вам справиться с любой задачей по проверке чисел на четность или нечетность. Решайте задачи точно и быстро вместе с нашей надежной нейросетью!
Чётные и нечётные циферки
Давайте определим, сколько четных цифр, а сколько нечетных в числе, введенном с клавиатуры. Если число делится без остатка на 2 (т. е. остаток равен нулю), значит оно четное. Увеличиваем на 1 счетчик четных цифр (статическая переменная even). Иначе число нечетное, увеличиваем счетчик нечетных цифр (статическая переменная odd).
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (666)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
15 сентября, 10:51
и да, не забудьте про проверку на то, что вводит пользователь
//создаем нужные переменные так же while(number > 0) int digit = number % 10; if(digit % 2 == 0) even++; else odd++; number /=10; > System.out.println("Even: " + even + " Odd: " + odd);
14 апреля, 20:29
1 while 1 if 1 else
Уровень 23
14 ноября 2022, 05:32
По моему, в правильном решении нет проверки на положительность вводимого числа -валидатор пропускает и отрицательные числа
Уровень 20
8 апреля 2022, 11:36

Возможно, будет кому-то интересно и понадобится. Логично ,что есть несколько реализаций, одна из них. Лайк если помог и правильно (см ведь только учусь) . PS в коде пару эстетических , как по мне, моментов
Александр Android Developer
8 апреля 2022, 10:21
String s = br.readLine(); //читаем строку s.length() //длина строки (количество цифр) далее массив, перебираем символы строки, сравнивая остаток от деления символа в s.charAt(i) на 2 с 0. Соответственно увеличиваем количество четных или нечетных
Уровень 22
31 марта 2022, 15:14
а почему не принимае ВЕРНОЕ решение через анализ строк? пишет «Убедись, что количество нечетных цифр сохраняется в переменную odd.» «Убедись, что количество четных цифр сохраняется в переменную even.»
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String s = reader.readLine(); int n = 0, odd=0, even=0; for ( int i=0; is.length(); i++ ) n = "02468".contains( s.substring(i,i+1) ) ? even++ : odd++; System.out.println("Even: "+even+" "+"Odd: "+ odd);
зы «ошибку» нашел. 🙂
22 декабря 2021, 20:43
Отличная задача. Сам не решил, но разобрав решение многое понял.
Уровень 24
13 октября 2021, 15:35
Скажите пожалуйста, почему while(a > 1) не срабатывало и надо было != 0 условие делать? При этом, пару тестов я делал с числами 89756 и 4445 и результат был идентичен правильному. В чём тут прикол?
Dmitry Tolstov Backend Developer в Microsoft
27 сентября 2021, 16:20

Решил таким способом.
Уровень 17
14 сентября 2021, 06:57
Зачем a = a / 10 ; .
Уровень 17
26 сентября 2021, 14:17
Эта строка необходима для того, чтобы цикл не был бесконечным, т.к. это счётчик, т.е. по окончании подсчёта even и odd c помощью данной строки мы выйдем из цикла. Каждое последующее прохождение цикла смещает запятую влево.
Уровень 19
29 сентября 2021, 11:28
допустим ты ввел в программу число 1234. Деля число по остатку %2 каждый раз ты по сути сравниваешь последнюю цифру. Следующим шагом чтоб не сравнивать повторно 1234, а получить 123, ты делишь 1234 на 10 (1234/10). В яве при таком делении целых чисел (int) дробная часть отбрасывается. Т.е. в школе на уроке математики ты разделив 1234 / 10 записал бы в ответ 123,4. А здесь в яве просто 123 без дробной части. И так крутим цикл пока от введенного числа не останется 0, когда это случится по условию цикла он (цикл) завершит работу.
Проверка элементов массива на четность
Сделай функцию, которая принимает массив любых целых чисел, которая возращает истинну, если все элементы четные, если бы хотя бы один элемент не четный, то false.
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Проверка элементов массива на четность/нечетность
Есть одномерный массив. Число елементов вводим с клавы и каждый елемент массива тоже вводим. Потом.
Проверка элементов вектора на четность
написал вот такую программку но не могу понять почему она так работает,точнее такой вывод //.

Проверить четность всех элементов массива
Дана таблица U из 25 целых чисел. Создать таблицу D, элемент D которой равен 1, если U четное и 0.
Четность и нечетность, сумму и кол-во элементов массива
Есть задание: В массиве Т(25) все четные числа сделать отрицательными, а для нечетных подсчитать.
Существует ли команда, которая определяет четность/нечетность элементов массива
Задан массив размером 10. Сформировать два массива размером 5, включая в первый массив — элементы.
3. Основы Kotlin. Рекурсии и циклы
Рассмотрим теперь несколько более сложный пример. Пусть нам требуется написать функцию, проверяющую натуральное число на простоту. Напомним, что число называется простым (prime), если оно делится нацело только на единицу и на себя, и составным, если у него есть и другие делители (единица обычно не считается ни простым, ни составным числом).
Прямолинейная проверка предполагает деление заданного числа n последовательно на числа в интервале от 2 до n-1 . Чтобы проверить, делится ли число n нацело на другое число m , достаточно сравнить остаток от деления n % m с нулём. Если хотя бы раз мы успешно поделили нацело — исходное число n не является простым.
fun isPrime(n: Int): Boolean < if (n < 2) return false // Необходимо, так как 1 -- не простое число for (m in 2..n - 1) < if (n % m == 0) return false >return true >
Обратите внимание, что, найдя делитель, мы сразу сообщаем о том, что результат — false — при этом прерывается как выполнение цикла, так и выполнение функции, поскольку результат уже определён. Чтобы доказать, что число является составным, нам достаточно найти хотя бы ОДИН делитель от 2 до n-1. Однако о результате true мы можем сообщить только после окончания цикла, проверив ВСЕ делители: чтобы доказать простоту числа, надо убедиться, что НИ ОДНО число от 2 до n-1 не является делителем. Начинающие часто делают вот такую ошибку:
for (m in 2..n — 1)
что, конечно, неверно. Такой цикл будет выполнен только один раз, результат будет true для нечётных и false для чётных чисел.
В тестовой функции мы можем проверить, что числа 2, 5 и 11 являются простыми, а числа 1, 4, 9 и 15 — составными. Мы можем также написать более сложную проверку, использовав тот факт, что первые 1000 простых чисел лежат в интервале от 2 до 7919 — см. https://en.wikipedia.org/wiki/List_of_prime_numbers.
@Test fun isPrime() < var count = 0 for (n in 2..7919) < if (isPrime(n)) < count++ >> assertEquals(1000, count) >
Мы в цикле проверяем числа от 2 до 7919 на простоту. Каждый раз, когда число оказывается простым, мы выполняем оператор count++ — сокращённая форма записи count = count + 1 или count += 1 , так называемый оператор инкремента (существует также оператор — , или оператор декремента).
Попробуем теперь с помощью isPrime узнать, сколько существует простых чисел, меньших десяти миллионов (для этого достаточно заменить в приведённом участке кода 7919 на 10000000). Если запустить такую функцию на выполнение, оно займёт довольно много времени. Всё дело в том, что наша функция isPrime(n: Int) выполняет лишние проверки. В частности, достаточно проверить делимость числа n на все числа в интервале от 2 до n/2, так как на большие числа n всё равно делится не будет. Более того, достаточно ограничится интервалом от 2 до √n — если n и делится на какое-то большее √n число (например, 50 делится на 10), то оно будет делится и на какое-то меньшее число (в данном случае, 50 делится на 5=50/10).
fun isPrime(n: Int): Boolean < if (n < 2) return false // Необходимо, так как 1 -- не простое число for (m in 2..sqrt(n.toDouble()).toInt()) < if (n % m == 0) return false >return true >
Обратите внимание, что перед вычислением квадратного корня мы были вынуждены воспользоваться функцией n.toDouble() для получения вещественного числа из целого, а после вычисления — функцией .toInt() для получения целого числа из вещественного. Обе эти встроенные в Котлин функции имеют необычную для начинающих форму записи, которая читается как “n преобразовать к Double”, “… преобразовать к Int”. Вместо того, чтобы записать аргумент внутри круглых скобок toDouble(n) , мы записываем его перед именем функции, отделяя его от имени символом точки. Подобный аргумент функции называется её получателем (receiver), в будущем мы ещё неоднократно столкнёмся с подобной формой записи.
Прерывание и продолжение цикла
При программировании циклов часто встречаются ситуации, когда необходимо прервать выполнение цикла досрочно, или же досрочно перейти к началу его следующей итерации. Для этой цели в Котлине используются операторы break и continue.
Продемонстрируем их на примере. Совершенным числом называется такое натуральное число, которое равно сумме всех своих делителей, кроме себя самого. В частности, 6 = 1 + 2 + 3 и 28 = 1 + 2 + 4 + 7 + 14 — совершенные числа. Напишем функцию, определяющую, является ли заданное число n совершенным.
fun isPerfect(n: Int): Boolean < var sum = 1 for (m in 2..n/2) < if (n % m == 0) < sum += m if (sum >n) break > > return sum == n >
Данная функция перебирает все возможные делители числа n от 2 до n/2 (единицу перебирать бессмысленно, поскольку на неё делится любое число — поэтому мутирующая переменная sum изначально равна 1, а не 0). Каждый найденный делитель прибавляется к сумме. Если в какой-то момент набранная сумма оказалась больше n — цикл можно прервать с помощью break, так как последующие делители могут только увеличить её ещё больше. После прерывания цикла выполняется следующий за ним оператор, в данном случае return.
Другой вариант записи той же самой функции использует оператор продолжения continue:
fun isPerfect(n: Int): Boolean < var sum = 1 for (m in 2..n/2) < if (n % m >0) continue sum += m if (sum > n) break > return sum == n >
Здесь вместо того, чтобы проверить, что n делится на m , мы проверяем обратное условие — что n НЕ ДЕЛИТСЯ на m . Если оно верно, выполняется оператор continue, при этом остаток данной итерации цикла пропускается, происходит увеличение значения m на 1 и переход к следующей итерации. Обе реализации isPerfect равнозначны, применение той или другой из них — дело вкуса.
Сторінки: 1 2 3
Вам також може сподобатися

Документация по android 0 1 752
Google Translate используют более 500 миллионов человек каждый месяц, переводя более чем 100 миллиардов слов каждый

Документация по android 1 5 280
[:ru] Перевод документации официального сайта developer.android.com LinearLayout представляет собой view group, которая выравнивает все

Уроки по android разработке на Java 2 210
Вернуться к урокам 11-20 Перейти к урокам 21-30 [mlw_quizmaster quiz=2]

Уроки по android разработке на Java 0 526
14 бесплатных лекций от экспертов из e-Legion,OK.RU, Tinkoff, JetBrains,Kaspersky Lab, Parallels, Aviasales, LinguaLeo, Mail.ru, ABBYY Лекции