Посчитать четные и нечетные цифры числа
Определить, сколько в числе четных цифр, а сколько нечетных. Число вводится с клавиатуры.
Решение задачи на языке программирования 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: , 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 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
n = int(input()) n1 = 0 n2 = 0 n3 = 0 n4 = 0 for i in range(n): if i == 1: n1 = i elif i == 2: n2 = i elif i == 3: n3 = i elif i == 4: n4 = i if n1 == n2 or n1 == n3 or n1 == n4 or n2 == n3 or n2 == n4 or n3 == n4: print("YES") else: print("NO")
в чем ошибка? или напишите свой вариант кода
Добавлено через 18 минут
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Дано натуральное четырехзначное число n.верно ли что это число содержит три одинаковые цифры
дано натуральное четырехзначное число n.верно ли что это число содержит три одинаковые цифры
Дано натуральное четырехзначное число n. Верно ли что это число содержит три одинаковые цифры
Дано натуральное четырехзначное число n. Верно ли что это число содержит три одинаковые цифры
Дано четырехзначное число. Верно ли, что цифры в нем расположены по возрастанию?
Дано четырехзначное число. Верно, что цифры в нем расположены за ростом? Например, 4311 – нет.
Дано четырехзначное число. Верно ли, что цифры в нем расположены по убыванию?
#include <iostream> //#include <conio.h> #include <math.h> //#include <stdlib.h> using.
4459 / 3212 / 1125
Регистрация: 21.03.2016
Сообщений: 7,949
Сообщение от programmer30001 
Дано четырехзначное число
а если будет дано число из 100000 значений. вам хватит терпения писать 100000 переменных и условий? ошибка в логике кода.
свой вариант кода — собрать числа в список при помощи остатка от деления и сравнить длину списка с множеством от этого списка или прежде чем добавлять цифру в список проверять ее наличие в списке.
1091 / 680 / 303
Регистрация: 05.09.2021
Сообщений: 1,163
Сообщение от programmer30001 
или напишите свой вариант кода
print('NO' if len(set(input())) == 4 else 'YES')
Просто Лис
![]()
5321 / 3335 / 1021
Регистрация: 17.05.2012
Сообщений: 9,768
Записей в блоге: 9
Сообщение от programmer30001 
в чем ошибка?
1 2 3
n = int(input()) for i in range(n): print('итерация. ')
705 / 588 / 150
Регистрация: 04.03.2022
Сообщений: 1,218
1 2 3 4 5 6 7 8 9 10 11 12 13
n1 = 0 n2 = 0 n3 = 0 n4 = 0 for i in range(n): if i == 1: n1 = i elif i == 2: n2 = i elif i == 3: n3 = i elif i == 4: n4 = i
можно спокойно заменить на (правда, непонятно, зачем)
1 2 3 4
n1 = 1 n2 = 2 n3 = 3 n4 = 4
Дальше (после 4) цикл молотит впустую. Условие, которое дальше, всегда будет False.
Добавлено через 4 минуты
Вариант, предложенный anton78spb, на мой взгляд, самый простой. Но вот еще:
1 2 3 4 5 6 7 8 9
n = input() n1 = n[0] n2 = n[1] n3 = n[2] n4 = n[3] if n1 == n2 or n1 == n3 or n1 == n4 or n2 == n3 or n2 == n4 or n3 == n4: print("YES") else: print("NO")
Просто Лис
![]()
5321 / 3335 / 1021
Регистрация: 17.05.2012
Сообщений: 9,768
Записей в блоге: 9
Сообщение от Parramon 
можно спокойно заменить на (правда, непонятно, зачем)
n1 = 1
n2 = 2
n3 = 3
n4 = 4
Там предлагалось типа такого:
n3 = (n // 10) % 10 n4 = n % 10
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Дано четырехзначное натуральное число А . Какое число получится если в нем поменять местами первую и третью цифры
Дано четырехзначное натуральное число А . Какое число получится если в нем поменять местами первую.
Дано четырехзначное натуральное n. Верно ли, что это число содержит ровно две одинаковые цифры?
Дано четырехзначное натуральное n. Верно ли, что это число содержит ровно две одинаковые цифры?
Дано натуральное число Определить: а) есть ли в нём цифра 3? б) есть ли в нём цифры 2 и 5?
Дано натуральное число. Определить: а) есть ли в нём цифра 3? б) есть ли в нём цифры 2 и 5?
Дано натуральное число. Определить: а) есть ли в нем цифра 3; б) есть ли в нем цифры 2 и 5.
Дано натуральное число. Определить: а) есть ли в нем цифра 3; б) есть ли в нем цифры 2 и 5. .

Написать программу, которая генерирует четырехзначное число и определяет, есть ли в числе одинаковые цифры
Написать программу, которая генерирует четырехзначное число и определяет, есть ли в числе.
Нахождение цифр четырёхзначного числа
исходник мой неверен в чем моя ошибка? Напишите программу для нахождения цифр четырёхзначного числа. Формат входных данных На вход программе подаётся положительное четырёхзначное целое число. Формат выходных данных Программа должна вывести текст в соответствии с условием задачи. Sample Input 1: 3281 Sample Output 1: Цифра в позиции тысяч равна 3 Цифра в позиции сотен равна 2 Цифра в позиции десятков равна 8 Цифра в позиции единиц равна 1
a = int(input()) n1 = a //100000 n2 = a //1000 n3 = a //100 n4 = a % 3280 print('Цифра в позиции тысяч равна', n3) print('Цифра в позиции сотен равна', n2) print('Цифра в позиции десятков равна', n3) print('Цифра в позиции единиц равна', n4)
Отслеживать
25k 4 4 золотых знака 20 20 серебряных знаков 36 36 бронзовых знаков
Решение модуля 4.1 Добрый, добрый Python
Модуль 4.1 Условный оператор if. Конструкция if-else.
Вводятся два вещественных числа в одну строку через пробел. Вывести на экран наибольшее из чисел. Задачу решить с помощью условного оператора.
# Получаем 2 строку и переводим в список a = list(map(float,input().split())) # Сравниваем 2 числа из списка под индексом 0 и 1 if a[0] > a[1]: print(a[0]) else: print(a[1])
Вводится слово. Необходимо определить, является ли это слово палиндромом (одинаково читается вперед и назад, например, АННА). Регистр букв не учитывать. Если введенное слово палиндром, на экран вывести ДА, иначе — НЕТ.
# Присваиваю исходное слово word_any = input() # С помощь метода .lower() перевожу символы в нижний регистр lower_simbols = word_any.lower() # Сравниваю слова обычное и слово перевёрнутое if lower_simbols == lower_simbols[::-1]: print('ДА') # Если слова одинаковые вывожу ДА else: print("НЕТ")# Иначе вывожу НЕТ
Вводятся два целых положительных числа m и n в одну строку через пробел. Если число m делится нацело на число n, то вывести на экран частное от деления (результат деления) в виде целого числа. В противном случае вывести сообщение «m на n нацело не делится» (без кавычек) и вместо m и n подставить соответствующие числа, например: «13 на 2 нацело не делится».
# Множественное присваивание m, n = map(int, input().split()) # Проверяем делится ли число на цело if m % n == 0: print(int(m/n)) # Выводим в консоль частное от деления else: print(f" на нацело не делится") # Иначе.
Вводятся три целых положительных числа в одну строку через пробел. Убедиться, что первые два числа — это катеты прямоугольного треугольника, а третье — его гипотенуза. (Подсказка: проверка делается по теореме Пифагора
). Если проверка проходит (истинна), то вывести на экран ДА, иначе — НЕТ.
# Множественное присваивание a, b, c = map(int, input().split()) # Проверяем выполнения условия задания # проверяем равна ли сумма квадратов стороны a и b, квадрату стороны c if c**2 == a**2 + b**2: print("ДА") # Если условие выполняет выводим ДА else: print("НЕТ")# Иначе выводим НЕТ
Вводится четырехзначное число. Проверить, что оно оканчивается на цифру 7. Вывести на экран ДА, если это так и НЕТ — в противном случае.
# Присваиваю данные в переменную list_num = list(input()) # Проверить, что оно оканчивается на цифру 7 # Преобразую из строкового значения в int обращаюсь к последнему элементу и сравниваю if int(list_num[-1]) == 7: print("ДА") # Если условие выполняется выводим ДА else: print("НЕТ") # Иначе выводим НЕТ
Вводится слово. Проверить, что в этом слове присутствуют все три буквы: t, h и o (в произвольном порядке). Реализовать программу с помощью одного условного оператора. Если проверка проходит, вывести ДА, иначе — НЕТ.
# Присваиваю данные в переменную list_symbol = list(input()) # Сохраняю кортеж с буквами tup = ('t', 'h', 'o') # Проверяю что в этом слове присутствуют все три буквы: t, h и o if 't' in list_symbol and 'h' in list_symbol and 'o' in list_symbol: print("ДА") # Если условие выполняется выводим ДА else: print("НЕТ") # Иначе выводим НЕТ
Вводится список городов в одну строку через пробел. Если в этом списке присутствует город Москва, то удалить его. Вывести на экран результирующий список в виде строки с городами через пробел.
# Присваиваю данные в переменную list_word = list(input().split()) # Если в этом списке присутствует город Москва if 'Москва' in list_word: # то удаляю его с помощью метода .remove('Москва') list_word.remove('Москва') print(*list_word) # Вывожу результат в консоль else: print(*list_word) # Вывожу результат в консоль
Вводятся четыре целых числа a, b, c, d в одну строку через пробел. Определить, войдет ли в конверт с внутренними размерами a и b мм прямоугольная открытка с размерами с и d мм. Для размещения открытки в конверте необходим зазор в 1 мм с каждой стороны. Открытку можно поворачивать на 90 градусов. Вывести ДА, если входит и НЕТ — если не входит.
# Множественное присваивание с помощью функции map a, b, c, d = map(int, input().split()) # Определяю войдет ли открытка в конверт # Сравниваем стороны открытки чтобы соответствовали сторонам конверта # -1 мм, сравниваем по обоим сторонам if ((a-1) > c and (b-1) > d) or ((a-1) > d and (b-1) > c): print('ДА') # Вывожу результат в консоль else: print('НЕТ') # Вывожу результат в консоль
Вводится шестизначное число. Определить, является ли оно счастливым. (Счастливым называют такое шестизначное число, в котором сумма его первых трех цифр равна сумме его последних трех цифр.). Вывести ДА, если счастливое и НЕТ — в противном случае.
# Сохраняю данные в переменную в виде списка num_0 = list(input()) num_1 = list(map(int, num_0[:3])) # Сохраняю в первую переменную первые три цифра в списке num_2 = list(map(int, num_0[3:])) # Сохраняю во вторую переменную последние три цифры в списке # Проверяю равна сумма первых трех цифр, сумме его последних трех цифр if sum(num_1) == sum(num_2): print('ДА') # Если равна вывожу ДА else: print('НЕТ') # Если неравна вывожу НЕТ
Работа светофора для пешеходов запрограммирована следующим образом: в начале каждого часа в течение трех минут горит зеленый сигнал, затем в течение двух минут – красный, в течение трех минут – опять зеленый и т. д. Дано вещественное число t, означающее время в минутах, прошедшее с начала очередного часа. Определить, сигнал какого цвета горит для пешеходов в этот момент. На экран вывести сообщение (без кавычек) «green» — для зеленого и «red» — для красного.
# Сохраняю данные в переменную в виде списка time_signal = float(input()) # Проверяю Если таймер больше 0 и меньше 3 или остаток от деления введенного времени больше 0 и меньше 3 тогда светится зеленый if (time_signal > 0 and time_signal < 3) or (time_signal % 5 >0 and time_signal % 5 < 3): print('green') else: print('red') # Логика с первым все понятно если так как первые три минуты гори зеленый то это подпадает под условия задания. # Дальше Если при делении на 5 остаток о деления будет больше 0 но меньше трех, мы получаем значит светится зеленый сигнал светофора # 4 % 5 = 4
