@Dzharves
Изучаю основы программирования на Python

Как использовать в иструкции for in range переменную — сумматор sum?

Надо найти сумму 1² + 2² + 3² + ... n² при заданном значении n. Нужно использовать переменную - сумматор sum. Я это понял так:
for a in range (1, 5):
    b = a ** 2
    result = sum(b)
    print(result)

Но конечно же это не работает. Где моя ошибка и как сделать правильно?
  • Вопрос задан
  • 423 просмотра
Решения вопроса 3
AnnTHony
@AnnTHony
Интроверт
Примерно так

n = 5

result = 1
for num in range(2, n + 1):
    result += num * num

print(result)


Переменную с именем sum - лучше не использовать, это ключевое слово в python

Можно в одну строчку:

print(sum([num ** 2 for num in range(1, n + 1)]))
Ответ написан
@kyern
Быдлокодер без стажа
Объявить переменную b до цикла. В цикле увеличивать b на нужное значение.
Ответ написан
Комментировать
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
first = 1
last = 5
summa_q = sum(i ** 2 for i in range(first, last + 1))
print(summa_q)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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