Нужна помощь в написании работы?

В данном разделе представлена программа, алгоритм которой описан в третьей главе.

1.  

Program Sred;

2.      

uses Crt, Graph;

3.      

Const

4.      

     dx=0.0001;

5.      

     u=1e9;

6.      

     a=25;

7.      

var

Внимание!
Если вам нужна помощь в написании работы, то рекомендуем обратиться к профессионалам. Более 70 000 авторов готовы помочь вам прямо сейчас. Бесплатные корректировки и доработки. Узнайте стоимость своей работы.

8.      

   Gd,Gm,l,j,i:integer;

9.      

   e,de,x,f0,f,f1,f2,y:real;

10.    

   res:text;

11.    

12.    

procedure  graf (a:integer);

13.    

Begin

14.    

     line(100, 100, 100, 500);

15.    

     line(450, 100, 450, 500);

16.    

     line(100, 350, 920, 350);

17.    

     line(275, 343, 275, 357);

18.    

     OuttextXY(915, 353,'X');

19.    

     OuttextXY(272, 363,'0');

20.    

     OuttextXY(89, 105,'F');

21.    

     OuttextXY(454, 105,'F');

22.    

     line(550, 100, 550, 500);

23.    

     line(900, 100, 900, 500);

24.    

     line(725, 343, 725, 357);

25.    

     OuttextXY(723, 363,'0');

26.    

     OuttextXY(523, 105,'F*F');

27.    

     OuttextXY(904, 105,'F*F');

28.    

end;

29.    

begin

30.    

     assign(res,'out.txt');

31.    

     rewrite(res);

32.    

     Gd := Detect;

33.    

     InitGraph(Gd, Gm, '');

34.    

     if GraphResult <> grOk then Halt(1);

35.    

     graf(a);

36.    

     e:=-70;

37.    

     f0:=-1;

38.    

     y:=-0.9;

39.    

for j:=1 to 5 do begin

40.    

     y:=y+1.5;

41.    

     e:=e+100;

42.    

     de:=10;

43.    

     f0:=-1*f;

44.    

     repeat

45.    

           x:=-a;

46.    

           f1:=1;

47.    

           f:=0;

48.    

           Repeat

49.    

                 x:=x+dx;

50.    

                 if abs(x)>a

51.    

                 then

52.    

                     f2:=dx*(u-e)*f

53.    

                 else

54.    

                     f2:=-dx*e*f;

55.    

                 f1:=f1+f2*dx;

56.    

                 f:=f+f1*dx;

57.    

           until (abs(f)>50)or(x>180);

58.    

           if (f>0)and(f0<0)or(f<0)and(f0>0) then

59.    

           begin

60.    

                e:=e-de;

61.    

                de:=de/10;

62.    

                f:=-f;

63.    

           end;

64.    

           f0:=f;

65.    

           e:=e+de;

66.    

     until (KeyPressed)or(de<1e-13);

67.    

     writeln(res,e:2:10);

68.    

     x:=-a;

69.    

     f1:=1;

70.    

     f:=0;

71.    

     Repeat

72.    

           for i:=1 to 200 do

73.    

           begin

74.    

                x:=x+dx;

75.    

                if abs(x)>a

76.    

                then

77.    

                    f2:=dx*(u-e)*f

78.    

                else

79.    

                    f2:=-dx*e*f;

80.    

                    f1:=f1+f2*dx;

81.    

                    f:=f+f1*dx;

82.    

           end;

83.    

           putpixel(275+round(x*7),350-round(f*10),j);

84.    

           putpixel(725+round(x*7),

                    350-round(f*f*y),j);

85.    

           writeln(res,x:2:3,'  ',f:2:5,'     ',f*f:2:5);

86.    

     until (abs(f)>50)or(x>180);

87.    

end;

88.    

     readln;

89.    

end.

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Узнать стоимость
Поделись с друзьями