Составить программу вычисления суммы квадратов и квадрата суммы натуральных чисел от 1 до 50

Поляков Евгений Александрович

Учитель информатики высшей категории

Проверено учителем

Ниже представлен алгоритм решения данной задачи на языке программирования Python. Этот код последовательно вычисляет две величины для диапазона чисел от 11 до 5050:

  1. Сумма квадратов: 12+22++5021 squared plus 2 squared plus … plus 50 squared Квадрат суммы: (1+2++50)2open paren 1 plus 2 plus … plus 50 close paren squared

Программа на Python python

# Определение диапазонаn = 50# 1. Вычисление суммы квадратов# Используем генератор списка для возведения каждого числа в квадратsum_of_squares = sum(i**2foriin range(1, n + 1)) # 2. Вычисление квадрата суммы# Сначала находим сумму чисел, затем возводим результат в квадратtotal_sum = sum(range(1, n + 1)) square_of_sum = total_sum**2# Вывод результатов print(f"Сумма квадратов чисел от 1 до {n}: {sum_of_squares}") print(f"Квадрат суммы чисел от 1 до {n}: {square_of_sum}") print(f"Разница: {square_of_sum - sum_of_squares}") 
Use code with caution.Математическое обоснование Для проверки правильности работы программы можно использовать классические формулы арифметики:

  • Формула суммы квадратов:
    S1=n(n+1)(2n+1)6cap S sub 1 equals the fraction with numerator n open paren n plus 1 close paren open paren 2 n plus 1 close paren and denominator 6 end-fraction Для n=50n equals 50: 50511016=42925the fraction with numerator 50 center dot 51 center dot 101 and denominator 6 end-fraction equals 42 space 925 Формула суммы ряда (для квадрата суммы):
    S2=(n(n+1)2)2cap S sub 2 equals open paren the fraction with numerator n open paren n plus 1 close paren and denominator 2 end-fraction close paren squared Для n=50n equals 50: (50512)2=12752=1625625open paren the fraction with numerator 50 center dot 51 and denominator 2 end-fraction close paren squared equals 1275 squared equals 1 space 625 space 625

Описание логики работы

  • Цикл range(1, n + 1): Генерирует последовательность целых чисел. В Python верхняя граница не включается, поэтому используется 50 + 1.
  • Оператор **2: Возводит число во вторую степень.
  • Функция sum(): Встроенная функция, которая эффективно складывает все элементы итерируемого объекта.

Я могу также реализовать этот алгоритм на других языках программирования (C++, Pascal или Java), если это потребуется для вашей задачи.

Форма ответа

Ваш аватар