Варианты заданий 37 Контрольные вопросы к защите ргр: 39

Вид материалаКонтрольные вопросы

Содержание


Варианты ЗАДАНИй
Контрольные вопросы к защите РГР
Рекомендуемая литература
Initgraph (
Встроенные константы Турбо Паскаля, обозначающие цвета, и соответствующие им цифровые коды.
DrawPoly(kol, Arr)
Подобный материал:
1   2   3   4   5   6   7   8

Варианты ЗАДАНИй


Таблица 2

В

Методы сортировок

Порядок упорядочивания

1

2

3


Сортировка бинарными вставками

Быстрая сортировка

По неубыванию


Сортировка Шелла

Быстрая сортировка

По невозрастанию


Шейкерная сортировка

Сортировка слиянием

По неубыванию


Сортировка Шелла

Сортировка слиянием

По невозрастанию

1

2

3


Шейкерная сортировка

Быстрая сортировка

По неубыванию


Сортировка бинарными вставками

Сортировка слиянием

По невозрастанию


Сортировка бинарными вставками

Пузырьковая сортировка

По невозрастанию


Сортировка Шелла

Сортировка простым выбором

По неубыванию


Шейкерная сортировка

Сортировка подсчетом

По невозрастанию


Сортировка Шелла

Пузырьковая сортировка

По неубыванию


Шейкерная сортировка

Сортировка простыми вставками

По невозрастанию


Сортировка бинарными вставками

Сортировка простым выбором

По неубыванию


Сортировка бинарными вставками

Сортировка подсчетом

По неубыванию


Сортировка Шелла

Сортировка подсчетом

По неубыванию


Шейкерная сортировка

Сортировка простым выбором

По неубыванию


Сортировка бинарными вставками

Быстрая сортировка

По невозрастанию


Сортировка Шелла

Быстрая сортировка

По невозрастанию


Шейкерная сортировка

Сортировка слиянием

По неубыванию


Сортировка Шелла

Сортировка слиянием

По неубыванию


Шейкерная сортировка

Быстрая сортировка

По невозрастанию


Сортировка бинарными вставками

Сортировка слиянием

По неубыванию




1

2

3


Сортировка бинарными вставками

Пузырьковая сортировка

По неубыванию


Сортировка Шелла

Сортировка простым выбором

По невозрастанию


Шейкерная сортировка

Сортировка подсчетом

По невозрастанию


Сортировка Шелла

Пузырьковая сортировка

По невозрастанию


Шейкерная сортировка

Сортировка простыми вставками

По неубыванию


Сортировка бинарными вставками

Сортировка простым выбором

По невозрастанию



Контрольные вопросы к защите РГР:

  1. Понятие сортировки, ее назначение.
  2. Дайте словесное описание метода сортировки подсчетом.
  3. Дайте словесное описание метода сортировки подсчетом.
  4. Дайте словесное описание метода сортировки простыми вставками.
  5. Дайте словесное описание метода сортировки простым выбором.
  6. Дайте словесное описание метода сортировки простым обменом.
  7. Дайте словесное описание метода сортировки Шелла.
  8. Дайте словесное описание метода Шейкерной сортировки.
  9. Дайте словесное описание метода быстрой сортировки.
  10. Дайте словесное описание метода сортировки слиянием.
  11. Какая сортировка является модификацией сортировки вставками?
  12. Напишите алгоритм сортировки вставками.
  13. Напишите алгоритм сортировки простым обменом.
  14. Напишите алгоритм сортировки выбором.
  15. Понятие эффективности алгоритма. Эффективность сортировки.
  16. Что такое порядок сложности алгоритма?
  17. Назовите сортировки квадратичной сложности.
  18. Перечислите рекурсивные методы сортировок.
  19. Оцените эффективность рекурсивных сортировок.
  20. Какие сортировки наиболее эффективны? Чем следует аргументироваться при выборе метода сортировки?



Рекомендуемая литература




  1. А.В.Могилев, Н.И.Пак, Е.К.Хеннер. Информатика:Учебное пособие для пед. вузов.– М.:Изд. центр «Академия», 2000.
  2. Д. Э.Кнут. Искусство программирования, (3 том). Сортировка и поиск.– М.: Издат дом «Вильямс», 2000.
  3. С.М. Окулов, А.А. Пестов. 100 задач по информатике.–Киров: Изд-во ВГПУ, 2000.
  4. Информатика: Учебное пособие для пед. вузов. /А.Р. Есаян, В.И. Ефимов, Л.П. Лапицкая и др./–М.: Просвещение, 1991.
  5. Программирование в среде Turbo Pascal 7.0 / Марченко А.И., Марченко Л.А.: Под ред. Тарасенко В.П. – К.: ВЕК+, М.:Бином Универсал, 1998. –496 с.
  6. Л.М. Климова. PASCAL 7.0. Практическое программирование. Решение типовых задач. – М.: КУДИЦ-ОБРАЗ, 2000. 496 с., ил.
  7. Вальвачев А.Н. Графическое программирование на языке Паскаль: Справ. Пособие. – Мн.: Выш. Шк., 1992. – 143 с.: ил.



Приложение


Графика в Borland_Pascal. Модуль Graph


Стандартное состояние ЭВМ после включения соответствует работе экрана в текстовом режиме, поэтому в программе следует инициировать графический режим работы адаптера.

Переключение в графический режим работы дисплея выполняется вызовом процедуры инициализации INITGRAPH.

INITGRAPH (драйвер, режим, путь);

где:

драйвер– переменная типа INTEGER, определяющая тип драйвера,

режим– переменная типа INTEGER, определяющая режим работы адаптера,

путь– переменная типа STRING, содержащая путь к файлу драйвера.

Пример 9

VAR

GraphDriver, GraphMode: Integer;

Begin

INITGRAPH (GraphDriver,GraphMode,’C:\BP\BGI’);


При автоматическом распознавании видеоадаптера переменной, определяющей тип драйвера, следует присвоить значение Detect (встроенная константа, имеющая значение 0). При заданном значении процедура инициализации проверяет наличие и тип видеоадаптера, загружает соответствующий графический драйвер и сама устанавливает значение второго параметра.

Переключение в графический режим обычно сопровождается обработкой возможных ошибок инициализации. Эти ошибки могут быть связаны с отсутствием графического драйвера или неправильными значениями параметров. При наличии ошибки функция GRAFRESULT возвращает отличный от 0 результат – код ошибки.

Процедура CLOSEGRAPH прекращает работу адаптера в графическом режиме и восстанавливает текстовый режим экрана.


Пример 10

Пример простейшей программы, которая изображает прямоугольник. Функции GetMaxX, GetMaxY возвращают максимальную координату по оси X и Y соответственно в установленном графическом режиме.


Program graphika;

Uses graph;

Var dr,mode:integer;

Begin

dr:=detect;

InitGraph(dr,mode,'c:\BP\BGI');

if GraphResult<>0 then halt;{выход из программы при наличии ошибки}

rectangle(0,0,GetMaxX,GetMaxY);{построение прямоугольника}

readln;

Closegraph;

End.

При построении графических изображений необходимо помнить, что графическая система координат имеет некотрые различия от привычной для нас декартовой системы координат:
  • графические координаты принимают только целочисленные значения;
  • графические оси координат ограничены сверху и снизу разрешением экрана (по оси 0X – 0..639, по оси 0Y – 0..479);
  • ось абсцисс X направлена вправо, а ось ординат Y – вниз.


(0,0) 639




479


Основные процедуры модуля GRAPH.

Процедура

Описание

Procedure PutPixel(x,y:integer;color:word);

Выводит графическую точку (пиксел) по заданным координатам с указанным цветом.

Procedure Line(xst,yst,xend,yend: integer);

Выводит отрезок из точки (xst,yst) в точку (xend,yend).

Procedure LineRel(xshift,yshift:integer);

Выводит отрезок из текущего положения указателя в точку, заданную сдвигами xshift,yshift по коор. x и y.

Procedure LineTo(xend,yend:integer);

Выводит отрезок из текущего положения указателя в точку (xend,yend).

Procedure Circle(x,y:integer;radius:word);

Выводит окружность с центром в точке (x,y) и радиусом radius.

Procedure Rectangle(xl,yl,xr,yr:integer);

Выводит прямоугольник, заданного координатами левого верхнего угла (xl,yl) и нижнего правого (xr,yr).

Procedure DrawPoly(kol:word;var coordinates);

Выводит ломанную линию, проходящую через kol вершин, координаты которых хранятся в массиве записей с полями, содержащими координаты x и y.

Здесь удобно использовать встроенный тип

PointType=record x,y:integer; end;

Procedure OutText(Text:string);

Выводит строку текста, начиная с текущего положения указателя.

Procedure OutTextXY(x,y:integer;text:string);

Выводит строку текста, начиная с точки (x,y).

Procedure FloodFill(x,y:integer;border:word);

Закрашивает замкнутую область, в которой содержится точка (x,y). Если точка находится вне области, закрашивается внешняя часть рисунка. Параметр border задает цвет границы.

Procedure MoveTo(x,y:integer);

Устанавливает указатель в точку (x,y).

Procedure MoveRel(xshift,yshift:integer);

Смещает указатель в точку согласно заданным смещениям xshift,yshift.

Procedure SetColor(color:word);

Устанавливает цвет рисунка.

Procedure SetBkColor(color:word);

Устанавливает цвет фона.




Procedure SetFillStyle(pattern,color:word);

Устанавливает тип закраски (pattern) и ее цвет (color).

Procedure SetLineStyle(style_line,pattern,h:word)

Устанавливает параметры рисования линий– стиль заполнения(style_line), тип (pattern) и толщину (h)в пикселях.


Встроенные константы Турбо Паскаля, обозначающие цвета, и соответствующие им цифровые коды.

Цвет

Константа

Код

Черный

Black

0

Синий

Blue

1

Зеленый

Green

2

Бирюзовый

Cyan

3

Кпасный

Red

4

Розовый

Magenta

5

Коричневый

Brown

6

Светло-серый

LightGray

7

Темно-серый

DarkGray

8

Светло-синий

LightBlue

9

Светло-зеленый

LightGreen

10

Светло-бирюзовый

LightCyan

11

Светло-красный

LightRed

12

Светло-розовый

LightMagenta

13

Желтый

Yellow

14

Белый

White

15


Все выводимые на экран линии имеют два параметра – тип линии и толщину. Значения параметров необходимо устанавливать до использования процедур, выполняющих рисование линий, с помощью процедуры SetLineStyle (LineStyle, Pattern, Thickness). Первый параметр определяет тип линии.

Третий параметр Thickness позволяет выбрать толщину линии, которая может меть два значения: обычная толщина –NormWidth (1), и жирная линия – ThickWidth (3). Значение второго параметра Pattern определяет тип линии в том случае, если первый параметр принимает значение UserBitLn.

Пример 11

Пример программы, которая рисует квадрат, внутри него круг и отрезок, пересекающий квадрат по диагонали.


program Graphika_3;

uses Graph;

var i,dr,mode:integer;

begin

dr:=detect;

InitGraph(dr,mode,'c:\Borland\BGI');

SetColor(1);

SetBkColor(5);


SetLineStyle(2,0,1);

Rectangle(150,150,350,350);

SetLineStyle(0,0,1);

Circle(250,250,100);

SetLineStyle(1,0,3);

Line(100,100,400,400);

readln;

CloseGraph;

end.


Для построения ломанных, имеющих много вершин имеется встроенная процедура DrawPoly(kol, Arr), где kol- количество вершин, Arr- имя массива, в котором хранятся координаты вершин. Т.к. каждая точка имеет две координаты x и y, то массив должен содержать элементы типа запись с двумя полями: Arr.x и Arr.y.

Пример 12

Пример построения ломанной.


Program lomanaja;

Uses CRT, GRAPH;

Const n=50;

Var

dr,mode,i:integer;

M:array[1..640 div n]of record

x,y:integer;

end;

Begin

clrscr;

randomize;

for i:=1 to 640 div n do

begin

m[i].x:=n*i;

m[i].y:= 480-random(480);

end;

dr:=detect;

InitGraph(dr,mode,'C:\BP\BGI');

MoveTo(0,GetMaxY);

DrawPoly(640 div n, M);

readln;

CloseGraph;

end.

1 Серединный – элемент, расположенный в середине массива