Напишите программу на python даны два четырехзначных числа а и в. выведите в порядке возрастания все четырехзначные числа в интервале от а до в,запись которых содержит ровно три одинаковые цифры входные данные-1900; 2100 выходные данные-1911; 1999; 2000; 2022

Ангелина545454 Ангелина545454    2   23.07.2019 05:20    180

Ответы
Kawaidesu43 Kawaidesu43  03.10.2020 11:22
a = int(input())
b = int(input())
while a < b:
   for i in range(10):
       if 3 == str(a).count(str(i)):      
       print(a)
a += 1

Тест №1
1900
2100

1911
1999
2000
2022

Тест №2
4999
5222

4999
5000
5055
5111
5155
ПОКАЗАТЬ ОТВЕТЫ
kino2011 kino2011  25.01.2024 18:44
Хорошо, давай разберемся с задачей шаг за шагом.

Для начала, у нас есть два четырехзначных числа: а и b (1900 и 2100 соответственно). Наша задача - вывести на экран все четырехзначные числа в интервале от а до b, которые содержат ровно три одинаковые цифры.

1. Первый шаг - определение списка всех четырехзначных чисел в заданном интервале:
Для этого создадим цикл, который будет идти от a до b+1 (включительно) и добавлять все числа в этом интервале в список.

```python
numbers = []
for num in range(a, b+1):
numbers.append(num)
```

2. Второй шаг - проверка каждого числа из списка на наличие ровно трех одинаковых цифр:
Мы можем решить эту задачу, преобразовав каждое число в строку и проверив количество уникальных символов в этой строке. Если количество уникальных символов равно 2, значит оставшийся символ встречается три раза.

```python
result = []
for num in numbers:
num_str = str(num)
unique_chars = len(set(num_str))
if unique_chars == 2:
result.append(num)
```

3. На последнем шаге мы просто выводим на экран все числа из списка result, которые удовлетворяют нашим условиям:

```python
for num in result:
print(num)
```

Общий код программы будет выглядеть так:

```python
a = 1900
b = 2100

numbers = []
for num in range(a, b + 1):
numbers.append(num)

result = []
for num in numbers:
num_str = str(num)
unique_chars = len(set(num_str))
if unique_chars == 2:
result.append(num)

for num in result:
print(num)
```

Таким образом, при запуске этой программы выведутся числа 1911, 1999, 2000 и 2022.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика