Хелпикс

Главная

Контакты

Случайная статья





«ИТЕРАЦИОННЫЕ ЦИКЛЫ. УТОЧНЕНИЕ КОРНЕЙ УРАВНЕНИЙ МЕТОДОМ ПОЛОВИННОГО ДЕЛЕНИЯ, ИТЕРАЦИОННЫЕ ЦИКЛЫ. ВЫЧИСЛЕНИЕ СУММЫ БЕСКОНЕЧНОГО РЯДА»



 

Министерство науки и высшего образования Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего образования «Рязанский государственный радиотехнический университет имени В. Ф. Уткина»

 

   Кафедра «ВПМ»

 

 

Отчет о лабораторной работе №5

                                             Вариант 4

 

«ИТЕРАЦИОННЫЕ ЦИКЛЫ. УТОЧНЕНИЕ КОРНЕЙ УРАВНЕНИЙ МЕТОДОМ ПОЛОВИННОГО ДЕЛЕНИЯ, ИТЕРАЦИОННЫЕ ЦИКЛЫ. ВЫЧИСЛЕНИЕ СУММЫ БЕСКОНЕЧНОГО РЯДА»

 

По дисциплине «Алгоритмические языки и программирование»

 

 

    Выполнила:

 ст. гр. 046

Бурцева С.

Проверили:

с. п. Москвитина О. А.

доцент, к. т. н. Макаров Н. П.

 

Рязань 2020

 

Цель работы: Нахождение корней методом половинного деления (тема12), вычислить сумму бесконечного ряда (тема14)

Задание:

Область, содержащая корень[0; 0, 85]

 

Блок-схема:

{Цель - уточнение корня}

{Переменные: }

{eps – допустимая погрешность; x – приближение корня; }

{a, b – границы интервала; y – значение функции на левой границе; }

{z - значение функции в середине отрезка. }

{Метод – половинного деления}

{Подпрограммы: }

{F – исследуемая функция}

{Программист:

{ст. гр. 046 Бурцева Светлана   }

{Проверила: с. п. Москвитина О. А. }

{Дата - 30. 11. 20 г. }

Program 12;

Var a, b, eps, x, y, z: real;

Function F(x: real): real;

Begin

F: =x-(1/(3+sin(3. 6*x)))

end;

Begin

writeln('Введите границы интервала и погрешность');

Read(a, b, eps);

    WriteLn('Винтервале: ', a, ', ', b);

    WriteLn('C погрешностью: ', eps);

y: = F(a);

repeat

x: = (a+b)/2;

z: = F(x);

ify*z < 0

then

b: = x

else

begin

a: =x;

y: =z;

end;

untilb-a < = eps;

writeln('корень: ', x, ' f(x)=', z);

End.

 

 

Окно вывода

 

Задание:

Диапазон изменений

Выражение для проверки: sinx

 

Блок-схема

 

 

{Цель - вычисление суммы с заданной}

{погрешностью по итерационному

Алгоритму}                                                                                                     

{Переменные:

{x - аргумент функции;     }

{n - переменная суммирования; }

{eps - погрешность вычисления суммы; }

{S – сумма;     t – слагаемое. }   

{Программист:

{ст. гр. 046 Бурцева Светлана   }

{Проверила: с. п. Москвитина О. А. }

{Дата - 30. 11. 20 г. }

 

Programlab14;

Var

                  eps, S, t, x: real;

              n: integer;

Begin

        writeln('x=');

    readln(x);

    writeln('eps=');

    readln(eps);

    writeln('Для x = ', x, ' с погрешностью ', eps);

    t: =x;

    S: =x;

    n: =1;

    whileabs(t)> epsdo

                       begin

                                     t: =-t*x*x/(2*n*(2*n+1));

                                 S: =S+t;

                                 n: =n+1;

                       end;

    writeln('n = ', n, ' S =', S: 12: 9);

    writeln('Контрольное значение: ', sin(x): 12: 9);

End.

 

Окно вывода:

 

Вывод: Я научилась конструировать программы со структурой итерационных циклов



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.