Графика в Borland Pascal

Автор: Пользователь скрыл имя, 21 Ноября 2011 в 18:11, курсовая работа

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

Процесс решения задачи на ПК – это совместная деятельность человека и машины. Его условно можно разделить на несколько этапов. Человеку отводятся шаги, связанные с творческой деятельностью (постановкой, алгоритмизацией, программированием задачи и анализом результатов), на долю компьютера – этапы обработки информации в соответствии с разработанным алгоритмом. При этом говорят, что компьютер выполняет программу, реализующую данный алгоритм.

Содержание

Введение 3
Общая часть 4
Алгоритм. Свойства алгоритмов. Виды алгоритмов 4
Среда программирования ИИО Borland Pascal 6
Алфавит языка Borland Pascal 7
Структура программы 9
Типы данных 10
Операторы ввода- вывода 11
Операции. Стандартные функции 13
Условный оператор 17
Операторы цикла 17
Оператор выбора 20
Одномерные и двумерные массивы 21
Строки. Процедуры и функции для работы со строками 23
Подпрограммы 26
Множества 26
Записи 27
Файлы 27
Динамическая и статистическая память 30
Динамические типы данных 31
Модуль Graph 34
Модуль Crt 35
Модули и модульное программирование 36
2 Постановка задачи 39
3 Описание входных и выходных переменных, процедур и функций 40
4 Проект решения задания 44
5 Текст программы 45
6 Листинг результатов 63
7 Список использованных источников 68
8 Графическая часть

Работа содержит 1 файл

Отчёт (NIKITA).doc

— 408.50 Кб (Скачать)

    line(x3,y3,ax3,ay3);

    line(ax3,ay3,bx3,by3);

    line(x3,y3,bx3,by3);

    aa:=aa+2;ab:=ab+2;

    if keypressed then ch:=readkey;

    until ch=#27;

    end. 

Модуль  программы: 

    unit prog;

    interface

    procedure Vrash(a:real;var x,y:integer;x0,y0,d:integer);

    implementation

    uses crt,graph;

    var x0,y0:integer;

        d:integer;

        procedure Vrash(a:real;var x,y:integer;x0,y0,d:integer);

    begin

    a:=a*pi/180;

    x:=x0+round(d*cos(a));

    y:=y0-round(d*sin(a));

    end;

    end. 

Программа «Пятиугольник» 

Основная  программа: 

    uses graph,proga,crt;

    const n=6;

    var poly:array[1..n+1] of pointtype;

    r,x,y,i,driver,mode:integer;

    alpha:real;

    s:string; 

    begin

    InitGraph (driver,mode, 'c:\bp\bgi');

    write('radius: ');

    r:=100;

    alpha:=0;

    driver:=detect;

      if GraphResult<>GroK then halt(1);

    clearviewPort;

    repeat

      setcolor(red);

    line(300,150,400,250);

    line(400,250,300,350);

    line(300,350,200,250);

    line(200,250,300,150);

    penta1;

    penta2;

    penta3;

    penta4;

    until keypressed;

    closeGraph;

     end. 

Модуль программы: 

    unit proga;

    interface

    procedure penta1;

    procedure penta2;

    procedure penta3;

    procedure penta4; 

    implementation

    uses graph, crt;

    const n=6;

    var poly:array[1..n+1] of pointtype;

    r,x,y,i,driver,mode:integer;

    alpha:real;

    s:string;

    procedure penta1;

    begin

    x:=300;

    y:=150;

    for i:=1 to n +1 do begin

    poly[i].x:=x+round((R/2)*Cos(alpha+(i-1)*2*pi/n));

    poly[i].y:=y+Round((R/2)*sin(alpha+(i-1)*2*pi/n));

    end;

    SetColor(10);

    DrawPoly(n+1,poly);

    delay(2000);

    setcolor(0);

    DrawPoly(n+1,poly); 
     

      end;

      procedure penta2;

    begin

    x:=400;

    y:=250;

    for i:=1 to n +1 do begin

    poly[i].x:=x+round((R/2)*Cos(alpha+(i-1)*2*pi/n));

    poly[i].y:=y+Round((R/2)*sin(alpha+(i-1)*2*pi/n));

    end;

    SetColor(10);

    DrawPoly(n+1,poly);

    delay(1000);

    setcolor(0);

     DrawPoly(n+1,poly); 
     

      end;

      procedure penta3;

    begin

    x:=300;

    y:=350;

    for i:=1 to n +1 do begin

    poly[i].x:=x+round((R/2)*Cos(alpha+(i-1)*2*pi/n));

    poly[i].y:=y+Round((R/2)*sin(alpha+(i-1)*2*pi/n));

    end;

    SetColor(10);

    DrawPoly(n+1,poly);

    delay(800);

    setcolor(0);

    DrawPoly(n+1,poly); 
     

      end; 

      procedure penta4;

    begin

    x:=200;

    y:=250;

    for i:=1 to n +1 do begin

    poly[i].x:=x+round((R/2)*Cos(alpha+(i-1)*2*pi/n));

    poly[i].y:=y+Round((R/2)*sin(alpha+(i-1)*2*pi/n));

    end;

    SetColor(10);

    DrawPoly(n+1,poly);

    alpha:= alpha+pi/180;

    delay(500);

    setcolor(0);

     DrawPoly(n+1,poly);

            end;

      end. 
     
     
     

                6 Листинг результатов

      Рисунок 1 – Программа шестиугольник

 
 

      Рисунок 2 – Программа треугольник

 

      Рисунок 3 – Программа пятиугольник 
 
 
 
 
 
 
 
 

      7 Список использованных источников 

      
  1. Попов В.Б. Turbo Pascal для школьников: Учеб. пособие. – 3- доп. изд. – М.: Финансы и статистика, 1999. – 528 с.: ил.
  2. Валединский В. Информатика. Начала программирования. Рабочая тетрадь для 10 – 11 классов. М.: НПО,: Школа, 1997. – 96 с.
  3. Зубов В. С.: Справочник программиста, М.: 1999 г.
  4. Кнут Д. “Искусство программирования для ЭВМ”, т.1 Основные алгоритмы, Изд. Мир М.: 1976 г.

Информация о работе Графика в Borland Pascal