Программа нахождения минимума функции двух переменных

Автор работы: Пользователь скрыл имя, 31 Мая 2012 в 21:22, курсовая работа

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

В курсовой работе в соответствии с заданием на проектирование решается задача поиска минимума функции .
В данной пояснительной записке приводится описание последовательности шагов по составлению программы на алгоритмическом языке Turbo Pascal 7.0 и результаты применения этой программы.
Рассматриваются вопросы математической формулировки и алгоритмизации задачи, разработки блок-схемы алгоритма ее решения, составления исходной Pascal-программы и реализация вычислений по составленной программе.

Содержание работы

Введение
1. Постановка задачи…………………………………………………….....5
2. Математическая формулировка задачи………………………...………6
3. Алгоритмизация задачи ………………………………………..…...…...8
4. Идентификаторы программы…………………………………………..10
5. Блок – схема алгоритма………………………………………………...11
6. Текст исходной программы…………………………………………….20
7. Результаты выполнения программы…………………………………...25
8. Анализ результатов……………………………………………………..28
9. Инструкция по работе с программой………………………………….29
Заключение
Список использованных источников

Файлы: 1 файл

Kursovaya.docx

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4. Идентификаторы программы

Для указания соответствия обозначений  переменных в формулах математической формулировки и их идентификаторов  в программе сведем их в таблицу 1:

Таблица 1

Обозначение параметров

Смысл параметра

В формулах

В программе

X1, X2

x[1..2]

Начальные приближения

e

E

Точность результата

δ

h

Начальный шаг поиска

F(x1,x2)

F (x[i])

значение функции в точках x1,x2

N

n

Количество переменных(n=3)

 

                 Остальные идентификаторы являются промежуточными или служебными.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

5.1. Блок-схема алгоритма  головной программы

 

 

 

 

 

 

 

 

 

                                              Нет                                   Да

                     

         #72   #80  

        Нет           Да           Нет      Да

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.2 Блок-схема алгоритма  подпрограммы–процедуры  «Spysk».

 

      

                                                  

 

                                                                   

 

                                                  

 

 

 

5.3 Блок-схема подпрограммы–процедуры  MyMenu

 

                                           

                                       

                                     I:=1,4

 

                                             

 

 

 

 

 

 

 

 

 

           I

 

 

 

                                                                                                                                                                                                                                

 

 

5.4 Блок-схема подпрограммы–функции F(x)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.5 Блок-схема алгоритма подпрограммы–процедуры «Interpol».

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.6 Блок-схема алгоритма подпрограммы–процедуры «Vvod1».

 

                                                  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.7 Блок-схема алгоритма подпрограммы–процедуры «Vivod».     

 

                                          

 

 

5.8 Блок-схема подпрограммы–процедуры  CursorSize.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.9 Блок-схема подпрограммы–процедуры  HiddeCursor.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.10 Блок-схема подпрограммы–процедуры  NormCursor.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.11 Блок-схема подпрограммы–процедуры  Spravka.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.12 Блок-схема подпрограммы–процедуры  Zastavka.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. Текст исходной программы 

program kyrsovou;

Uses crt,dos;

Label 11;

const n=2;

 

type

     mas1=Array[1..4] of String[50];

      coords = array [1..2] of real;

 

     Const

        menu:mas1=('=> Справка...',

                   '=> Метод спирального координатного  спуска... ',

   '=> Метод квадратичной  интерполяции-экстраполяции... ',

                   '=> Выход...     ');

      var

 

 

      i,j,s:integer;

      pos,key: Integer;

      c,kod,k10:Char;

 

      pass: String;

      ch: char;

     h, e: real;

      x: coords;

       v: integer;

 

 

          {----------Cursorcursor init----------}

      Procedure CursorSize(Size: word);

      var Regs: Registers;

      Begin

       With Regs do

        Begin

         AH:=$01;

         CH:=Hi(size);

         Cl:=Lo(Size);

         intr($10,Regs);

        end;

      end;

      {----------Cursor init----------------}

 

 

      {----------Cursor OFF-----------------}

 

      procedure HiddeCursor;

      begin

      CursorSize($2000);

      end;

 

      {----------Cursor ON------------------}

      Procedure NormCursor;

      begin

      CursorSize($0607);

 

end;

 

 

Procedure ramka(x1,y1,x2,y2:byte);

            const

             a=#201;

             b=#205;

             c=#187;

             d=#186;

             e=#188;

             f=#200;

             Begin

             Textcolor(0);

             Textbackground(6);

             Clrscr;

             gotoxy(x1,y1);

             Write(a);

             for i:=x1+1 to x2-1 do write(b);

             Write(c);

             for i:=y1+1 to y2-1 do

               Begin

              gotoxy(x1,i);

              write(d);

              gotoxy(x2,i);

              write(d);

              End;

             Gotoxy(x1,y2);

              Write(f);

             for i:=x1+1 to x2-1 do write(b);

             Write(e);

             End;

 

Procedure Okno(x1,y1,x2,y2,Fcolor,Tcolor:byte);

             Begin

             Clrscr;

             TextMode(3);

             HiddeCursor;

             Ramka(x1,y1,x2,y2);

             Window(x1+1,y1+1,x2-1,y2-1);

             Textbackground(Fcolor);

             textcolor(TColor);

             Clrscr;

             Gotoxy(1,1);

            End;

      Procedure Spravka;

      var

      ch: char;

      Begin

      clrscr;

      window(0,0,80,24);

Информация о работе Программа нахождения минимума функции двух переменных