Форум » Циклы и ветвления » 21 » Ответить

21

яковлева: Добрый день. Подскажите, пожалуйста, какие здесь корни. В ответе 15. Если поставить (заменить строку )if F(t) <R then begin, то ответ 1. var a, b, t, M, R :integer; function F(x:integer):integer; begin F := 2*(x*x-50)*(x*x-50)+6 end; begin a := -11; b := 11; M := a; R := F(a); for t := a to b do begin if F(t) <= R then begin M := t; R := F(t) end end; write(M+R) end. Заранее, спасибо.

Ответов - 2

polyakovss: Здравствуйте! Условие (F(t) <= R) соответствует последнему минимуму F(t), а (F(t) < R) - первому. F(t) минимальна при (x*x-50)=0, то есть последний (второй) минимум достигается при x = 7,071. В цикле "for" переменная t изменяется каждый раз на 1. Поэтому функция F(t) будет вычисляться в точках 6, 7, 8, ... . При t=7 F(t)=8. Поэтому M+R=15. Если (F(t) < R), то t=-7, F(t)=8, а M+R=1.

яковлева:



полная версия страницы