Составление программ для решения задач на языке программирования Turbo Pascal

Автор работы: Пользователь скрыл имя, 12 Ноября 2010 в 10:56, Не определен

Описание работы

Курсовой проект

Файлы: 1 файл

Информатика (К У Р С О В А Я)Кумертау.doc

— 319.50 Кб (Скачать файл)

    Алгоритм подпрограммы min_max_2 представлен на рис. 4.

    Рисунок 4 – Логическая схема подпрограммы-процедуры  min_max_2 

    Алгоритм подпрограммы min_max_3 представлен на рис. 5. 

    Рисунок 5 – Логическая схема подпрограммы-процедуры  min_max3

5 ПОСТРОЕНИЕ ПРОЦЕССА  РЕШЕНИЕ ЗАДАЧИ

   

   

   Программа для курсовой работы составлена на языке Паскаль. Для решения поставленной задачи использовались как стандартные процедуры и функция языка, так и организованные самостоятельно. Ниже приведен текст программы.

program prog;

label 1;

var a,b,c,a1,a2:integer;

    min,max,f1,f2,f3:real;

    h,x,yt,yp,x1:real;

    i:integer;

function y(x:real):real;

begin

     y:=sqr(x)/a+x/b+c;

end;

function dy(x:real):real;

begin

     dy:=2*x/a+1/b;

end;

procedure min_max2;

begin

     if f1>f2 then

begin {max:=f1; min:=f2; }

writeln('наибольшее  значение - у(а1)= ',f1:5:3);

writeln('наименьшее  значение - у(a2)= ',f2:5:3);

end;

   if f1<f2 then

begin {max:=f2; min:=f1;}

   writeln('наименьшее значение - у(a1)= ',f1:5:3);

   writeln('наибольшее  значение - у(а2)= ',f2:5:3);

   end;

end;

procedure min_max3;

begin

     if (f1>f2)and(f1>f3) then

                            begin

        {max:=f1;}

    writeln('наибольшее  значение - у(а1)= ',f1:5:3);

     if f2<f3 then {min:=f2} writeln('наименьшее значение - у(х1)= ',f2:5:3)

         else {min:=f3} writeln('наименьшее значение - у(a2)= ',f3:5:3);

            end

        else if (f2>f1)and (f2>f3) then

         begin

         {max:=f2;}

    writeln('наибольшее  значение - у(x1)= ',f2:5:3);

      if f1<f3

        then {min:=f1}

      writeln('наименьшее  значение - у(a1)= ',f1:5:3)

             else {min:=f3}

            writeln('наименьшее значение - у(a2)= ',f3:5:3);

                end

                  else

                   begin

                     {max:=f3;}

              writeln('наибольшее значение - у(a2)= ',f3:5:3);

             if f1<f3

                 then {min:=f1}

               writeln('наименьшее значение - у(a1)= ',f1:5:3)

                else {min:=f3}

                 writeln('наименьшее значение - у(a2)= ',f3:5:3);

                  end

end;

begin

     writeln('Исследование  функции вида y=xx/a+x/b+c'  );

   1:write('введите целые цисла а=');readln(a);

     write('b=');readln(b);

     write('c=');readln(c);

     writeln('введите интервал :');

     write('a1='); readln(a1);

     write('a2='); readln(a2);

     if a*b<>0 then

               begin

                    x1:=-a/(2*b);

                    f1:=y(a1);

                    f2:=y(x1);

                    f3:=y(a2);

                    write('x=',x1:5:3,' - критическая точка , y(x1)= ',y(x1):7:3);

                    if a>0 then writeln (' - min')

                              else writeln (' - max');

                    min_max3;

               end

               else

               begin

                    writeln('a и b не могут быть нулевыми');goto 1;

               end;

     h:=abs(a1-a2)/10;

     x:=a1;

     i:=1;

     writeln ('табулирование функции вида  у=хх/a+х/b+с');

     writeln ('-----------------------------------');

     writeln ('! N  !   x   !    y    !    y p   !');

     writeln ('-----------------------------------');

     repeat

           writeln('!',i:4,'!',x:7:2,'!',y(x):9:3,'!',dy(x):9:3,'!');

           i:=i+1;

           x:=x+h;

     until x>a2;

end. 
 
 

    

                   

                   

              

    

    

    

      

   6 КОНТРОЛЬНЫЙ ПРИМЕР 

Исследование  функции вида y=xx/a+x/b+c

введите целые  цисла а=1

b=1

c=-1

введите интервал :

a1=0

a2=1

x=-0.500 - критическая  точка , y(x1)=  -1.250 - min

наибольшее значение - у(a2)= 1.000

наименьшее значение - у(a1)= -1.000

табулирование функции вида у=хх/a+х/b+с

-----------------------------------

! N  !   x   !    y    !    y p   !

-----------------------------------

!   1!   0.00!   -1.000!    1.000!

!   2!   0.10!   -0.890!    1.200!

!   3!   0.20!   -0.760!    1.400!

!   4!   0.30!   -0.610!    1.600!

!   5!   0.40!   -0.440!    1.800!

!   6!   0.50!   -0.250!    2.000!

!   7!   0.60!   -0.040!    2.200!

!   8!   0.70!    0.190!    2.400!

!   9!   0.80!    0.440!    2.600!

!  10!   0.90!    0.710!    2.800!

      
 
 
 

Заключение 

         В курсовой работе представлено решение  задачи исследования и табулирования квадратичной функции с произвольными коэффициентами.

         

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

         По  результатам контрольного примера задача решена верно. Программа отлажена в среде программирования TURBO PASCAL 7.0

       6 используемая литература 

        1. Информатика. Учебник. 3-е изд./Под ред. Проф. Н.В. Макаровой, М.:,2000.

        1. Информатика. Базовый курс., Симонович С.В. и  др.СПб.: Питер. 2001.
        2. Новейшая энциклопедия персонального компьютера 2002, В.П. Леонтьев, М., “Олма-пресс”, 2002.
        3. Симонович С., Евсеев Г., Практическая информатика, учебное пособие, М.: АСТ-пресс,2000.
  1. Фаронов, Turbo Pascal 7.0., М.: Инфра-М,1998.
  2. Фигурнов В.Э.,IBM PC для пользователей, краткий курс, М.: Инфра-М, 1997.
  3. Могилев А.В., Пак Н.И., Хеннер Е.К., Информатика, Учебное пособие для студ. пед. вузов, 2-е изд., М.:Изд. центр “Академия”, 2001 – 816с.
  4. , Грачева Л.Н., Лекции по информатике
  5. Грачёва Л.Н., методические указания к курсовой работе по информатике для заочников, 2010 г.

Информация о работе Составление программ для решения задач на языке программирования Turbo Pascal