Напишите программу которая считает количество четных цифр введенного числа
Перейти к содержимому

Напишите программу которая считает количество четных цифр введенного числа

  • автор:

ФМЛ № 31. Кружок Phyton.Начало: домашнее задание — 4

Напишите программу, которая считает количество чётных цифр введённого числа.

Входные данные

Входная строка содержит одно натуральной число N .

Выходные данные

Программа должна вывести количество чётных цифр введённого числа.

Входные данные

123456

Выходные данные

Входные данные

13579

Выходные данные

Сдать: для сдачи задач необходимо войти в систему

Ограничения

2 сек.
64 MiB

Список задач
  • A. Сумма цифр числа
  • B. Количество нулей
  • C. Минимальная и максимальная цифры
  • D. Обращение числа
  • E. Список степеней двойки
  • F. Чётные цифры
  • G. Две одинаковые цифры рядом
  • H. Все одинаковые цифры

Вы используете гостевой доступ (Вход)

Эта страница: General type: incourse. Context Условия задач: домашнее задание — 4 (context id 396673). Page type mod-statements-view.

Посчитать четные и нечетные цифры числа

Определить, сколько в числе четных цифр, а сколько нечетных. Число вводится с клавиатуры.

Решение задачи на языке программирования 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

Python 3. Циклы. Операторы while и for

Задача: Напишите программу, которая вводит два целых числа и находит их произведение, не используя операцию умножения. Учтите, что числа могут быть отрицательными.

a, b = map(int, input().split()) res, s = 0, 1 if b

Задача: Напишите программу, которая вводит натуральное число N и выводит первые N чётных натуральных чисел. Программа должна вывести в одну строчку N первых чётных натуральных чисел, разделив их пробелами.

n = int(input()) for i in range (1,2*n,2): print (i+1)

Задача: Напишите программу, которая вводит натуральные числа a и b и выводит сумму квадратов натуральных чисел в диапазоне от a до b.

a, b = map(int, input().split()) if a > b: t = a a = b b = t s = 0 for i in range (a, b+1): s = s+i*i print (s)

Задача: Напишите программу, которая вводит четыре натуральных числа (a, b, c и d) и находит все пятизначные числа, которые при делении на a дают в остатке b , а при делении на c дают в остатке d .

Входные данные Первая входная строка содержит два натуральных числа, разделённые пробелами: a и b. Вторая строка содержит натуральные числа c и d, также разделённые пробелом. Гарантируется, что 0 ≤ b ≤ a и 0 ≤ d ≤ c. Выходные данные Программа должна вывести в одну строчку через пробел все пятизначные натуральные числа, которые при делении на a дают в остатке b, а при делении на c дают в остатке d . Если таких чисел нет, программа должна вывести число -1.

x = input().split() y = input().split() a = int(x[0]) b = int(x[1]) c = int(y[0]) d = int(y[1]) if a==0 or c==0: print(-1) else: res = '' for i in range(10000, 99999): if (i%a == b) and (i%c == d): res = res+" "+str(i) res = res.strip() if res == '': print(-1) else: print(res)

Задача: Натуральное число называется числом Армстронга, если сумма цифр числа, возведенных в K-ю степень (где K – количество цифр в числе) равна самому числу. Например:
153 = 1^3 + 5^3 + 3^3
Напишите программу, которая находит все числа Армстронга на отрезке [a, b].

Входные данные: Входная строка содержит два натуральных числа – значения a и b, разделённых пробелами. Гарантируется, что a ≤ b.

Выходные данные: Программа должна вывести в одну строчку все числа Армстронга на отрезке [a, b] , разделив их пробелами. Если таких чисел нет, программа должна вывести число -1.

x = input().split() a = int(x[0]) b = int(x[1]) ''' a = 100 b = 400 ''' if a > b: t = a a = b b = t if a

Задача: Напишите программу, которая считает количество чётных цифр введённого числа.

n = int(input()) n = int(n) k = 0 m = 0 while n>0: if n%2==0: k+=1 else: m+=1 n=n//10 print(k)

Задача: Напишите программу, которая определяет, верно ли, что введённое число содержит две одинаковых цифры, стоящие рядом (как, например, 221).

n = int(input()) res = "NO" d1 = 0 d2 = 0 while n > 0: d1 = n%10 d2 = n//10%10 if d1 == d2: res = "YES" n = n//10 print (res)

Задача: Напишите программу, которая определяет, верно ли, что введённое число содержит по крайней мере две одинаковых цифры, возможно, не стоящие рядом (как, например, 212). Программа должна вывести слово 'YES', если в числе есть две одинаковые цифры, и слово 'NO', если такой пары цифр нет.

n = int(input()) res = "NO" d1 = 0 d2 = 0 while n>0: d1 = n%10 m = n//10 while m > 0: d2 = m%10 if d1 == d2: res = "YES" m = m//10 n = n//10 print (res)

Задача: Модифицированный алгоритм Евклида для вычисления наибольшего общего делителя двух натуральных чисел, формулируется так: нужно заменять большее число на остаток от деления большего на меньшее до тех пор, пока остаток не станет равно нулю; тогда второе число и есть НОД. Напишите программу, которая реализует этот алгоритм.

Входные данные: Входная строка содержит два числа, разделённые пробелом – a и b .

Выходные данные: Программа должна вывести в одной строке два числа: сначала наибольший общий делитель двух введённых чисел, а затем – количество шагов цикла, которые были выполнены.

x = input().split() #Python 3.x a = int(x[0]) b = int(x[1]) n = 0 while a!=0 and b!=0: if a > b: a = a % b else: b = b % a n+=1 print (a+b, n)

Задача: Напишите программу, которая вычисляет сумму и произведение целых чисел, поданных на её вход. Ввод заканчивается числом 0.

Входные данные: Во входных строках записаны целые числа, по одному в каждой строке. В последней строке записано число 0.

Выходные данные: Программа должна вывести в одной строке сумму и произведение введённых чисел (не считая завершающий 0), разделив их пробелом.

summ, mul = 0, 1 while 1: c = int(input()) if c == 0: break; summ += c mul *= c print (summ,mul)

Задача: Напишите программу, которая вводит натуральное число N и определяет его факториал, то есть произведение натуральных чисел от 1 до N: N! = 1·2·<. >· N.

n = int(input()) f = 1 while n>1: f *= n n -= 1 print (f)

Задача: Напишите программу, которая выводит на экран все цифры числа, начиная с первой.

Входные данные: Входная строка содержит натуральное число N.

Выходные данные: Программа должна вывести все цифры введённого числа в одной строке, начиная с первой. Цифры отделяются пробелами.

n = int(input()) res = "" while n>0: res = str(n%10)+ " " + res n = n//10 print (res.strip())

Задача: Напишите программу, которая вводит натуральные числа a и b и выводит все простые числа в диапазоне от a до b. Входная строка содержит два натуральных числа: a и b. Гарантируется, что a ≤ b. Программа должна вывести в одной строке через пробел все простые числа на отрезке [a, b]. Если таких чисел нет, программа должна вывести 0.

x = input().split() a = int(x[0]) b = int(x[1]) if a == 0: a = 1 res = "" for i in range(a, b + 1): for j in range(2,i): if i%j == 0: break else: res = res + " " + str(i) if res != '': print (res) else: print (0)

Напишите программу, которая считает количество чётных цифр введённого числа. ПИТОН.

Вадим Гуру (2551) Решение согласно условию, сколько четных чисел в числе, тут 2 варианта или четное или нет. Понятно, что хотят, даже скорее всего хотят через целочисленное деление, но сформулируйте нормально )))

Остальные ответы
Чем питон лучше удава? )
Максим АмыловМыслитель (5611) 1 год назад
len([i for i in [int(j) for j in input()] if i % 2])
ВадимГуру (2551) 6 лет назад
А зачем строку полученную через input еще раз приводить к строке?
DONER KEBAB Просветленный (34282) для пущей уверенности)
print(sum(int(i) % 2 == 0 for i in input()))
a = input()
b = []
for i in a:
if i % 2 == 0:
b.append(i)
print(b)
VenomПрофи (888) 4 года назад
LOL! Но лучше пощдно, чем никогда
Анисимов ЮрийУченик (232) 3 года назад
Дай надпись "Лучший ответ", пожалуйста, если не сложно

numbers = int(input('Введите число '))
decimal_numbers = 0
decimal = 0
while True:
decimal % 2
decimal += 1
if decimal % 2 == 0:
decimal_numbers += 1
if decimal == numbers:
break
print('Четных чисел', decimal_numbers)

Похожие вопросы
Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *