Как можно заменить цикл for на while?

for i in range(1,1000):
    if not i%100:
        print(str(i//100)*3)

Нужно было найти в промежутке от 1 до 1000 все трехзначные числа, цифры которых одинаковы;


Ответы (3 шт):

Автор решения: Петров Макарий

Например так:

i = 1
while i<1000:
    if not i%100:
        print(str(i//100)*3)
    i=i+1
→ Ссылка
Автор решения: Алексей Р
digit = 1
while digit < 10:
    print(111 * digit)
    digit += 1
111
222
333
444
555
666
777
888
999
→ Ссылка
Автор решения: Stanislav Volodarskiy

Зачем вам while? for проще и быстрее:

n = 3
limit = 10 ** n                            # 1000
repunit = (limit - 1) // 9                 #  111
for i in range(repunit, limit, repunit):   #  111, 222, 333, ..., 999
    print(i)
→ Ссылка