ЗАДАЧИ
problems.ru |
О проекте
|
Об авторах
|
Справочник
Каталог по темам | по источникам | |
|
Задача 76217
УсловиеТа же задача, но разрешается использовать из арифметических операций лишь сложение и вычитание, причём общее число действий должно быть порядка n.РешениеВведём переменную k_square (square — квадрат), связанную с k соотношением k_square = k2:k := 0; k_square := 0; writeln (k_square); while not (k = n) do begin | k := k + 1; | {k_square = (k-1) * (k-1) = k*k - 2*k + 1} | k_square := k_square + k + k - 1; | writeln (k_square); end; Замечание. Можно обойтись без вычитания с помощью такой хитрости: while not (k = n) do begin | k_square := k_square + k; | {k_square = k*k + k} | k := k + 1; | {k_square = (k-1)*(k-1)+(k-1)=k*k-k} | k_square := k_square + k; end; Источники и прецеденты использования |
© 2004-...
МЦНМО
(о копирайте)
|
Пишите нам
|