Реферат: Нахождение корней уравнений различными методами

Министерство Образования Российской Федерации

Иркутский Государственный Технический Университет.

Кафедра АПП.

                       Курсовая работа по программированию

                                  и основам алгоритмизации.

Выполнил студент гр.АТП-04-1

                                                                   Чечев И.С.

                                                   Проверила: Пешкова Л.И

Иркутск

2005 г

Вариант31

 

                                                      Задание 1

 

1. Проверить условиесходимости и записать расчетные формулы для нахождения корня уравнения /> с точностью />= /> методом половинногоделения, интервал существования корня [1;2].

Составить блок-схемуалгоритма и программу решения задачи. В программе предусмотреть подсчет и выводна печать числа итерации, за которое удается найти значение корня с заданнойточностью. Отладить и выполнить программу на машине.


 

начало

  />Блок-схема алгоритма.

/> 


/>Functionf(x: real):real

/>Общая:     

/>
Программа.

Program delenie;

uses crt;

const

e=0.0001

var      x,a,b,t:real;

           n:integer;

functionf(x::real):real;

 begin

t:=sqrt(1+exp(2*x));

F:=exp(x)+t-2;

 end;

begin

readln(a,b);

n:=0;

if F(a)*F(b)>0then begin writeln(‘kornei net’);  end;

           whileABS(a-b)>e   do

                 Begin

n:=n+1;

x:=(a+b)/2

if F(a)*F(x)<0then b:=x else a:=x;

 end;

writeln(‘koren:   ‘,x);

writeln(‘chisloiterazii:   ‘,n);

end.


                                          Задание 2.

Записать расчетныеформулы, составить блок-схему алгоритма и программу для вычисленияопределенного интеграла /> методомСимпсона, разбивая отрезок интегрирования [0;1] на 78 частей. Предусмотреть впрограмме вычисление точного значения определенного интеграла черезпервообразную />.

Решение.

Вытекает из формулыСимпсона />


Блок-схема алгоритма.


Functionp(x:real):real


/> /> /> /> /> /> /> /> <td/> />  

/>Function y(x:real):real;

/> /> /> /> /> <td/>

    начало

  /> /> />  

 

/>


 Основная блок-схема:

/>


/>/>/>                                                />

/>


/>/>/>/>

   z=p(b)-p(a)

  />/>/>

      s=s*(h/3)

  />

        s=s+y(a)+y(b)

  />/>/>/>/>/>/>/>

      c=-c

  />

        s=s+k*y(x)

  />

    k:=3+c

  />

     x=x+h

  />/>/>

         c=-1

                                                              

                                                                                                                     

Программа.

Program Simpson;

var      x,s,h,z,a,b:real;

           n,c:integer;

            i,k:integer;

functionp(x:real):real;

 begin

p:=1/sqr(3*sin(x)+2*cos(x));

 end;

functiony(x:real):real;

 begin

y:=3/36-(3*cos(x)-2*sin(x))/(13*(2*cos(x)+3*sin(x)));

 end;

begin

      writeln(‘vvod’,a,b,n)

readln(a,b,n);

h:=(b-a)/(2*n);

c:=-1;

x:=a;

for i:=1 to 2*n-1do

 begin

x:=x+h;

k:=3+c;

s:=s+k*y(x);

c:=-c;

end;

s:=s+y(a)+y(b);

s:=s*(h/3);

z:=p(b)-p(a);

writeln(‘vivod’,z);

end.


                                        Задание 3.

                        Построить график функции.

                             Y=1/sqr(3sin(x)+2cos(x)).

Программа.

Program grafik;

uses Graph;

var x0,y0:Word;

      сrdr,crm:integer;

       x,y:real;

       i,j:word;

 begin

СrDr:=Detect;

InitGraph(GrDr,Grm,’C:\paskal\BGI’);

if GraphResult<> grok then

beginwriteln(‘error graf’);Halt end;

x0:=40;

y0:=GetMaxy;

setbkcolor(1);

y0:=GetMaxy;

setbkcolor(1);

setcolor(15);

Line (x0,0,x0,y0);

Line(x0,y0,getmaxx,y0);

MoveTo(x0,y0);

for i:=1 togetymaxx-40 do

begin

x:=1/(3*sin(x)+2*cos(x)*(3*sin(x)+2*cos(x)));

LineTo(x0+i,y0-round(y*40));

setcolor(15);

Line (x0,0,x0,y0);

Line(x0,y0,getmaxx,y0);

MoveTo(x0,y0);

for i:=1 togetymaxx-40 do

begin

x:=1/(3*sin(x)+2*cos(x)*(3*sin(x)+2*cos(x)));

z:=78*sin(x)+44*cos(x)*78*sin(x)+2*cos(x);

e:=cos(x)

LineTo(x0+i,y0-round(y*40));

end;

readln;

CloseGraph;

end.

еще рефераты
Еще работы по информатике, программированию