(Контрольные вопросы – правильные варианты)
КАТЕГОРИЯ 1. Фрагмент программы для приближенного расчета корня уравнения F(x)=0 (функция задана в другом месте программы) методом итераций на интервале [a,b] с заданной точностью eps и коэффициентом lamb.
implicit none! обязательное обявление имен
real &! локальные переменные, необходимые для расчета корня
Xnew, &! новое значение Х
Xold! значение Х на предыдущей итерации
real a,b! начальные левая и правая границы интервала
real lamb! итерационный коэффициент
real eps! заданная точность
real kor! корень уравнения
real F! заданная функция
...! ввод начальных данных a,b,eps,lamb
Xnew=(a+b)/2! начальное значение Х
do
Xold=Xnew! переназначение Х для следующей итерации
Xnew= Xold - lamb*F(Xold)! новая итерация по Х
if(abs(Xnew - Xold)<eps)exit! проверка на завершение поиска
enddo
kor=(Xnew + Xold)/2! приближенное значение корня
КАТЕГОРИЯ 2. Модуль для объявления и инициализации глобальных переменных.
Объявление и инициализация глобальных переменных вещественного типа первой точности (a=-2.0, b=-1.0, eps=1e-5, lamb=0.1, kor) для поиска корня и сответствующих текстовых переменных длиной 12 символов (text_a, text_b, text_eps,text_lamb, text_kor) для обмена данных с окнами диалоговой панели.
Вариант 1
module Lab14
implicit none
real::a=-2.0! левая граница интервала изоляции корня
real::b=-1.0! правая граница интервала изоляции корня
real::eps=1e-5! точность вычислений
real::lamb=0.1! итерационный коэффициент
real::kor! искомый корень уравнения
character(12)::text_a='',text_b='', text_lamb=''
character(12)::text_eps=''
character(12)::text_kor=''
end module Lab14
Вариант 2
module Lab14
real(4):: &
a=-2.0, &! левая граница интервала изоляции корня
b=-1.0, &! правая граница интервала изоляции корня
eps=1e-5, &! точность вычислений
lamb=0.1, &! итерационный коэффициент
kor;! искомый корень уравнения
character(12):: &
text_a='', &
text_b='', &
text_eps='', &
text_lamb='', &
text_kor='';
contains
end module
Вариант 3
module Lab14
real*4 &
a, &! левая граница интервала изоляции корня
b, &! правая граница интервала изоляции корня
eps, &! точность вычислений
lamb, &! итерационный коэффициент
kor;! искомый корень уравнения
data a,b,eps,lamb/-2.0,-1.0,1e-5,0.1/! инициализация
character*12 text_a,text_b,text_eps,text_lamb,text_kor;
data text_a,text_b,text_eps,text_lamb,text_kor/5*""/! инициализация
end
Вариант 4
module Lab14
real a/-2.0/,b/-1.0/,eps/1e-5/,lamb/0.1/,kor;! инициализация
character text_a*12/""/,text_b*12/""/,text_eps*12/""/, &
text_lamb*12/""/,text_kor*12/""/;
end module