Задача 7. Годы
Недавно Костя прочитал какую-то научно-фантастическую книжку, где самые страшные события случались только в определённые годы, а именно когда в году были ровно три одинаковые цифры. Косте стало интересно, какие годы были или будут «особенными» в определённом промежутке.
Напишите программу, в которой у пользователя запрашивается два четырёхзначных числа A и B. Затем выведите в порядке возрастания все четырёхзначные числа в интервале от A до B, запись которых содержит ровно три одинаковые цифры.
Пример:
Введите первый год: 1900
Введите второй год: 2100
Годы от 1900 до 2100 с тремя одинаковыми цифрами:
1911
1999
2000
2022
_________
Python
Python# Можно помощь с задачей на Python
вроде чет накостылял
start = int(input('первый год: '))
stop = int(input('второй год: '))
answer = []
for number in range(start, stop + 1):
str_number = str(number)
set_str_number = set(str_number)
for digit in set_str_number:
if str_number.count(digit) > 2:
answer.append(number)
print(f'Годы от {start} до {stop} с тремя одинаковыми цифрами:')
print(*answer, sep='\n')
start = int(input('первый год: '))
stop = int(input('второй год: '))
answer = []
for number in range(start, stop + 1):
str_number = str(number)
set_str_number = set(str_number)
for digit in set_str_number:
if str_number.count(digit) > 2:
answer.append(number)
print(f'Годы от {start} до {stop} с тремя одинаковыми цифрами:')
print(*answer, sep='\n')
true_year = ''
for year in range(1900, 2100):
for symbol in str(year):
if str(year).count(symbol) >= 3:
true_year += str(year)
true_year += '\n'
break
print(true_year)
for year in range(1900, 2100):
for symbol in str(year):
if str(year).count(symbol) >= 3:
true_year += str(year)
true_year += '\n'
break
print(true_year)
year_a = int(input('Введите первый год: '))
year_b = int(input('Введите второй год: '))
print(f'Годы от {year_a} до {year_b} с тремя одинаковыми цифрами: ')
def years(a,b):
for year in range(a, b + 1):
for i in str(year):
if str(year).count(i) >= 3:
print(year)
break
years(year_a, year_b)
year_b = int(input('Введите второй год: '))
print(f'Годы от {year_a} до {year_b} с тремя одинаковыми цифрами: ')
def years(a,b):
for year in range(a, b + 1):
for i in str(year):
if str(year).count(i) >= 3:
print(year)
break
years(year_a, year_b)
# TODO здесь писать код
years = int(input("Введите первый год:"))
years2 = int(input("введите второй год"))
print("Года от,", years, "до", years2, "тремя одинаковыми цифрами")
for i in range(years,years2+1):
****a,b,c,d = i // 1000, i // 100 % 10, i // 10 % 10, i % 10
****if a == b == c or b == c == d or c == d == a or a == b == d:
********print(a * 1000 + b * 100 + c * 10 + d)
years = int(input("Введите первый год:"))
years2 = int(input("введите второй год"))
print("Года от,", years, "до", years2, "тремя одинаковыми цифрами")
for i in range(years,years2+1):
****a,b,c,d = i // 1000, i // 100 % 10, i // 10 % 10, i % 10
****if a == b == c or b == c == d or c == d == a or a == b == d:
********print(a * 1000 + b * 100 + c * 10 + d)
def same(x, y):
count = 1
string_1 = ''
string_2 = ''
for year in range(x, y + 1):
for number in str(year):
if number in string_1:
count += 1
string_2 += number
if count == 3:
if string_1 != string_2 and int(string_2) % 11 == 0:
print(year)
else:
string_1 += number
string_1 = ''
string_2 = ''
count = 1
same(1900, 2100)
1911
1999
2000
2022
count = 1
string_1 = ''
string_2 = ''
for year in range(x, y + 1):
for number in str(year):
if number in string_1:
count += 1
string_2 += number
if count == 3:
if string_1 != string_2 and int(string_2) % 11 == 0:
print(year)
else:
string_1 += number
string_1 = ''
string_2 = ''
count = 1
same(1900, 2100)
1911
1999
2000
2022
Алекс Косарев

def relevant_years(first_year, second_year):
if second_year <= first_year or len(str(first_year)) != 4 or len(str(second_year)) != 4:
print('Ошибка')
else:
print('Года от', first_year, 'до', second_year, 'с тремя одинаковыми цифрами:')
year_1 = 0
for year in range(first_year, second_year+1):
year_1 = year
first_num = year_1 % 10
year_1 //= 10
second_num = year_1 % 10
year_1 //= 10
third_num = year_1 % 10
year_1 //= 10
fourth_num = year_1 % 10
year_1 //= 10
if (first_num == second_num == third_num) or (first_num == second_num == fourth_num) or (second_num == third_num == fourth_num) or (third_num == fourth_num == first_num):
print(year)
first_year = int(input('Введите первый год: '))
second_year = int(input('Введите второй год: '))
relevant_years(first_year, second_year)
if second_year <= first_year or len(str(first_year)) != 4 or len(str(second_year)) != 4:
print('Ошибка')
else:
print('Года от', first_year, 'до', second_year, 'с тремя одинаковыми цифрами:')
year_1 = 0
for year in range(first_year, second_year+1):
year_1 = year
first_num = year_1 % 10
year_1 //= 10
second_num = year_1 % 10
year_1 //= 10
third_num = year_1 % 10
year_1 //= 10
fourth_num = year_1 % 10
year_1 //= 10
if (first_num == second_num == third_num) or (first_num == second_num == fourth_num) or (second_num == third_num == fourth_num) or (third_num == fourth_num == first_num):
print(year)
first_year = int(input('Введите первый год: '))
second_year = int(input('Введите второй год: '))
relevant_years(first_year, second_year)
Евгений Шуляк
Работает только на последней цифре. А нужно всё перебрать.
Евгений Шуляк
В сущности идея верная с теми инструментами что есть (бред сивой кобыли откровенно говоря, всё одно что требовать пробежать 100 км не используя руки и ноги)
Евгений Шуляк
Извиняюсь. Неправильно отступ поставил. Вижу теперь что правильно. Голова уже опухла от попыток решить эту задачу через костыли. Хотя есть нормальные инструменты но которые ещё пока не дали.
Похожие вопросы
- Решение задач по python
- Нужно решить задачу на Python
- Помогите решить задачу на Python. Никак не могу решить задачу, больше дня не могу найти ответ! Никакой код не работает.
- Еще одна задача в Python
- Пожалуйста, помогите решить задачу на Python. Упражнения 57,58,59,60.
- Интересная задача на PYTHON?
- Задача на Python
- Пожалуйста, помогите решить задачу на Python. Упражнение 124, 125, 146
- Помогите пожалуйста с задачей на Python.
- Помогите пж с задачей по Python.