Определите, что будет напечатано в результате работы следующей программы. var s, k: integer; begin s: =500; for k : =4 to 10 do s : = s-2*k; write(s); end. объясните всё доступно, . p.s.: ответ я знаю,=402, но мне нужно объяснение как это число получилось. на 34

Lisa2003black Lisa2003black    2   19.08.2019 16:20    0

Ответы
1232468689 1232468689  05.10.2020 05:24
S := 500, то есть s изначально была равна 500
Затем начинается цикл for, в каждом повторе цикла переменная k увеличивается на 1, от 4 до 10. То есть в первом повторе k=4, во втором k=5, и так до тех пор, пока k не станет равна 10.
При этом каждый повтор цикла от S отнимается 2*k, то есть в первом повторе от s будет отнято 2*4=8, во втором 2*5 = 10, в третьем 2*6=12 и так далее.

Можно решить, рассмотрев все повторы цикла, у нас получится:
500-8-10-12-14-16-18-20 = 402

Можно найти сумму чисел, которые будут вычтены из S. Числа представляют собой арифметическую прогрессию с разницей в 2, первый элемент прогрессии 8, всего чисел 7. 
Сумму первых членов прогрессии найдем по формуле ((2*8+2(7-1))/2)*7 =  98
500-98 = 402
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика