Найти сумму квадратов всех целых чисел от A до B включительно - C (СИ) (70686)
Формулировка задачи:
Даны два целых числа A и B (A < B). Найти сумму квадратов всех целых чисел от A до B включительно.
Решение задачи: «Найти сумму квадратов всех целых чисел от A до B включительно»
textual
Листинг программы
typedef unsigned long long int ull;
ull f(int n) {return n*(n+1)/2*(2*n+1)/3;}
int main() {printf("%d\n", f(11)-f(4));}
Объяснение кода листинга программы
В данном коде:
- Типизация: переменная типа
unsigned long long intс названиемullобъявлена какull f(int n)- это значит, что функцияfбудет возвращать значение типаullи принимать целочисленный аргумент типаintс именемn. - Вычисление суммы квадратов: внутри функции
fпроисходит вычисление суммы квадратов всех целых чисел отnдоBвключительно. Это делается с помощью формулыn*(n+1)/2*(2*n+1)/3. Здесьn- это значение аргумента функцииf, аB- это максимальное значение, до которого нужно вычислить сумму квадратов. - Вывод результата: в функции
mainвызывается функцияfс аргументом11и выводится результат вычисленияf(11)с помощью функцииprintf. Здесь11- это значение аргумента функцииmain, который передается в функциюf. - Вычисление разности: результат вычисления
f(11)вычитается из результата вычисленияf(4). Это делается для того, чтобы найти разность между суммами квадратов чисел от4до11и от11до11. Результат выводится на экран с помощью функцииprintf. Здесь4и11- это значения аргументов функцииmain, которые передаются в функциюf.