Проект Эйлера - Задача 6

Разность между суммой квадратов и квадратом суммы

Сумма квадратов первых десяти натуральных чисел равна
12 + 22 + ... + 102 = 385

Квадрат суммы первых десяти натуральных чисел равен
(1 + 2 + ... + 10)2 = 552 = 3025

Следовательно, разность между суммой квадратов и квадратом суммы первых десяти натуральных чисел составляет 3025 − 385 = 2640.

Найдите разность между суммой квадратов и квадратом суммы первых ста натуральных чисел.

Моё решение на Python:
Хорошая и приятная задача. Но и здесь есть над чем подумать. В начале я её решил с помощью двух форов... а можно было еще и листы написать.

Две переменные. Сумма квадратов и квадрат суммы. Задаём предел от 1 и до 101 (101 не учитывается). Для проверки можно задать предел от 1 до 11 - получим 2640 как в примере.
sum1 = 0 sum2 = 0 for x in range(1, 101): sum1 += x ** 2 sum2 += x sum2 **= 2 total = sum2 - sum1 print(total)

В итоге прошраммка выдаёт 25164150.

Я так решил.

3 комментария:

  1. Я решил так.

    sqr1 = list(range(1, 101))
    sqr2 = [n ** 2 for n in sqr1]
    sumsqr = sum(sqr2)

    sqr3 = list(range(1, 101))
    sqrsum = sum(sqr3)
    sqrsum *= sqrsum

    diff = sqrsum - sumsqr
    print(diff)

    ОтветитьУдалить
  2. lister = [i**2 for i in range(101)]
    lister2 = [i for i in range(101)]
    print((sum(lister2))**2 - sum(lister))

    не проще?

    ОтветитьУдалить
  3. a = int(input('Введите число: '))
    b = int(input('Введите число: '))
    c = []
    d = []
    for i in range(a):
    i = i**2
    c.append(i)
    for j in range(b):
    d.append(j)

    _sum_=(sum(c))
    square=(sum(d)**2)
    print(square - _sum_)

    мое решение

    ОтветитьУдалить