Посчитать четные и нечетные цифры числа
Определить, сколько в числе четных цифр, а сколько нечетных. Число вводится с клавиатуры.
Решение задачи на языке программирования Python
Если число делится без остатка на 2, его последняя цифра четная. Увеличиваем на 1 счетчик четных цифр even . Иначе последняя цифра числа нечетная, увеличиваем счетчик нечетных цифр odd .
В Python операцию нахождения остатка от деления выполняет знак % .
Чтобы избавиться от младшего уже учтенного разряда, число следует разделить нацело на 10. Деление нацело обозначается двумя слэшами // .
a = int(input()) even = 0 odd = 0 while a > 0: if a % 2 == 0: even += 1 else: odd += 1 a = a // 10 print(f'Even: even>, odd: odd>')
65439 Even: 2, odd: 3
Кроме чисто математического подхода в Python можно решить задачу «через строку». Мы не будем переводить введенное строковое представление числа к целочисленному типу, вместо этого переберем символы строки в цикле for . Каждый символ преобразуем к числу и проверим на четность.
a = input() even = 0 odd = 0 for i in a: if int(i) % 2 == 0: even += 1 else: odd += 1 print("Even: %d, odd: %d" % (even, odd))
Поскольку количество четных (как и нечетных) цифр ограничено, в программу можно включить что-то типа «базы данных» и проверять каждый символ на вхождение в нее.
a = input() digits = "02468" even = 0 odd = 0 for i in a: if i in digits: even += 1 else: odd += 1 print("Even: %d, odd: %d" % (even, odd))
Обратим внимание, что оператор in языка Python в заголовке цикла for обозначает иное, чем в заголовке условного оператора. Логическое выражение i in digits возвращает истину если i входит в состав digits . В иных случаях — ложь.
X Скрыть Наверх
Решение задач на Python
Как вывести только чётные/нечётные числа из списка?
Начал учить питон, нужно вывести все чётные/нечётные числа от 1 до введённого(input), на экран. Пытался «вырвать» числа через одно, но выдаёт ошибку «builtins.TypeError: ‘int’ object is not subscriptable». Искал в интернете, как выводить только чётные/нечётные числа, ничего в моей ситуации не подошло. Заранее спасибо добрым людям за помощь!
n = int(input()) k = int(input()) if k == 1: for i in range(1, n + 1): print(i[:1], end=' ')
Отслеживать
задан 29 сен 2022 в 18:09
1 1 1 золотой знак 1 1 серебряный знак 1 1 бронзовый знак
Число считается четным, если оно делится на 2, то есть его остаток от деления на 2 равен 0. В Python есть прекрасный оператор % . Он — тот, кто вам нужен
29 сен 2022 в 18:13
А что в этом коде выводит через одно?
29 сен 2022 в 18:40
n = int(input()); k = int(input()); print(*range(k, n + 1, 2))
2 фев в 17:58
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Вы, наверно, имели в виду
n = int(input()) for i in range(1, n + 1, 2): print(i, end=' ')
Заметьте параметр 2 в функции range() .
(Т.к. i целое число, а не список, невозможно к нему применить отрезок [:1] , как вы сделали в своей программе и что вызвало ошибку.
Для версии с применением отрезка см. конец этого ответа.)
Число 2 как 3-ий параметр в функции range(1, n + 1, 2) определяет шаг, т.е. она будет выдавать
- каждый 2-ой элемент из диапазона 1, 2, 3, . n
т.е. числа 1, 3, 5, и т.д.
Когда бы вы хотели выводить наоборот четные числа, примените range(2, n + 1, 2) .
Может быть, что вы хотели сначала из range(1, n + 1) сделать список, чтобы была возможность применить отрезки ( [] ):
n = int(input()) lst = list(range(1, n + 1)) print(lst[::2])
Отрезки подобны функции range() ( [откуда:докуда:шаг] ) — я пропустил «откуда» и «докуда», чтобы применить только «шаг» (на весь список).
(Для вывода четных чисел вместо range(1, n + 1) примените range(2, n + 1) .)
Определение четности числа в Python
Для того чтобы определить четное число введено или нет в Python необходимо воспользоваться оператором «Остаток деления» и написать условие.
Оператор вычисления остатка от деления
В языке программирования Python, также как и в других языках программирования, есть команда — оператор (%), который вычисляет остаток от деления на число. Приведем примеры:
4 % 2 >>>0 5 % 2 >>>1 20 % 10 >>>0 25 % 10 >>>5
При делении числа 4 на 2 — остаток 0. При делении числа 5 на 2 — остаток 1. При делении числа 20 на 10 — остаток 0. При делении числа 25 на 10 — остаток 5.
Определения четности числа с помощью оператора остатка от деления
Мы знаем, что при делении четного числа на 2 у нас в остатке остается 0. Поэтому для определения четного и нечетного числа можем воспользоваться оператором остатка от деления. Напишем для этого условие:
a = 5 if a % 2 == 0: print('Четное число') else: print('Нечентное число') >>> Нечетное число
В начале присваиваем переменной a число, четность которого хотим проверить. Далее пишем условие: если остаток деления переменной a на 2 равно 0, то вывести на экран «Четное число», в противном случае вывести «Нечетное число».
При запуске написанного кода, мы увидим «Нечетное» число.
Написание функции для определения четности числа
Можем написать функцию, которая на входе будет получать число, а на выходе выводить на экран «Четное число» или «Нечетное число» в зависимости от четности полученного числа.
def even_or_odd(a): if a % 2 == 0: print('Четное число') else: print('Нечентное число') even_or_odd(10) >>> Четное число even_or_odd(11) >>> Нечетное число
Разберем написанный код. В первой строке мы объявляем новую функцию. Назовем её even_or_odd. Функция на входе будет получать одно число. Далее она проверяет это число на остаток от деления на 2 и выводит на печать «Четное число» или «Нечетное число». Условие, которое написано в функции мы рассмотрели уже ранее.
Как видим, определить четность числа — это довольно простая задача, которая быстро решается с помощью оператора остатка от деления (%).
Вывести четные и нечетные числа
по идее программа должна выводить четные и нечетные числа, но она не работает, как я понял пайтон не может сложить строку и целочисленное , я пытался делать так : print (str(i + ‘ =четное’)),не помогло. как правильно сделать?
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Разделить массив на четные и нечетные числа
Помогите с задачами .Големы требуют на Питоне. 1) Дан целочисленный массив размера N, заполненный.
Разделение массива на четные и нечетные числа
Перенесено из раздела Паскаль Доброе время суток, столкнулся здесь с проблемой что не могу.
Маша любит чётные числа, а Миша – нечётные
Новичок в питоне, хотелось бы получить помощь с проблемой, при B>=200000000 умирает код. При.
В новый список добавить четные и нечетные числа
Добрый вечер) Ребят, подскажите, у меня два списка, my_list_1 и my_list_2, мне нужно в новый.
Четные и нечетные числа списка в разных строках
Вася не любит английский язык, но каждый раз старается получить хотя бы четверку за четверть, чтобы.
8219 / 4338 / 1838
Регистрация: 27.03.2020
Сообщений: 7,162
Сообщение было отмечено kostya2006 как решение
Решение
kostya2006,
1 2 3 4 5
for i in range (1,30): if i % 2== 0: print (str(i) + ' =четное') else: print (str(i) + ' =нечетное')
Добавлено через 1 минуту
Ты пытаешься сложить строку и число.
Сколько будет снег плюс 8 градусов?
2689 / 1595 / 513
Регистрация: 21.02.2017
Сообщений: 4,209
Записей в блоге: 1
for i in range(1, 30): print(i, "нечетное" if i & 1 else "четное", sep="=")
Сообщение от Gdez
Сколько будет снег плюс 8 градусов?
Меню пользователя @ Welemir1 |
Читать блог |
8219 / 4338 / 1838
Регистрация: 27.03.2020
Сообщений: 7,162
Welemir1,
Регистрация: 28.06.2022
Сообщений: 1
a = int(input(«Введите число «))
for i in range (1,a+1):
if i % 2== 0:
print (» четное = «,+i)
else:
print («нечетное = «,+i)
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Четные числа в начало списка, нечетные — в конец
Четные числа в начало списка, нечетные — в конец. Задача: Вводятся целые числа. Необходимо.
Заменить чётные числа на квадраты, а нечётные уменьшить вдвое
119.В массиве из 20 случайных целыx цифр заменить парные числа на квадраты, а непарные уменьшить.
Проверить, чередуются четные и нечетные числа в массиве или нет
1.Данный целочисленный массив размера n проверьте чергуются в нем четные и не четные числа если.
Вывести на экран только нечетные целые числа из диапазона от 0 до заданного числа
Напишите программу, которая бы выводила на экран только нечетные целые числа из диапазона от 0 до.
Даны числа от 2 до N. Вывести нечетные числа, кратные трём
n = int(input(‘Введите число: ‘)) list1 = list(range(2, n + 1)) print(list1) Не понимаю, как.
Все четные числа файла записать во второй файл, а нечетные — в третий файл
Имеется файл, элементами которого являются целые числа. Все четные числа этого файла записать во.
Или воспользуйтесь поиском по форуму: