@SilRai

Можно ли решить первую задачу проекта Эйлера через цикл while?

можно ли таким или похожим способом решить задачу?

Условие задачи:
spoiler
Если выписать все натуральные числа меньше 10, кратные 3 или 5, то получим 3, 5, 6 и 9. Сумма этих чисел равна 23.

Найдите сумму всех чисел меньше 1000, кратных 3 или 5.


counter = 0
x = 1
while x < 1000:
    x = x + 1
    a = x / 3
    if type(a) is int:
        b = x / 5
    else:
        continue
    if type(b) is not int:
        continue
    else:
        counter = counter + 1
print(counter)


Только начал изучать язык, подскажите пожалуйста в чем моя ошибка
даже при выполнении условия возвращается в начало цикла
  • Вопрос задан
  • 97 просмотров
Решения вопроса 2
sabone
@sabone
beginner developer
Можно и попроще
sum = 0
x = 1
while x < 1000:
	if x % 3 == 0 or x % 5 == 0:
		sum += x
	x += 1
print(sum)
Ответ написан
@NicolayChe
Сделай print(a) и увидишь что выводиться число с точкой ( 1.0 ), а это тип float и поэтому твои условия не выполняются type(a) is int - false
Далее идет в else и перезапускает цикл
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы