Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика / 6Алгор-ция и програм-е.doc
Скачиваний:
21
Добавлен:
27.04.2015
Размер:
106 Кб
Скачать

Типы данных.

Type

Length

(bait)

Range

Byte

1

0 to 255

Char(литерный)

1

0 to 255

Integer

2

-32,768 to 32,767

shortint

1

-128 to 127

Real

6

Longint

4

-2147483648 to 2147483647

float

32 bits

3.4e-38 to 3.4e+38

double

64 bits

1.7e-308 to 1.7e+308

longdouble

80 bits

3.4e-4932 to 1.1e+4932

Указатель

Тип -множ-во знач-ий,к-ые могут принимать объекты пр-мы,и совок-ть оп-ций,допустимых над этими знач-ми.Все допустимые в яз.Паскаль типы подраздел-ся на 2 гр.:скалярные(простые) и структуриров-ые. Скал-ые т. подраздел-ся на стандартные (целочисленные, вещественные, логические, литерные) и описанные пользов-лем (диапазоны, перечисляемый тип).Структурир-ые т. базир-ся на скал-ых типах и могут содержать их разл. комбинации. К структур-ым типам относятся: строки,массивы,множ-ва,записи,файлы и указатели.

Строка-последоват-ть символов,заключ-ая в апострофы.Массив-структур-й тип данных,состоящий из фиксиров-го кол-ва эл-тов,имеющих один и тот же тип.Множ-во-структ-ый тип данных, представл-ий набор выбранных по какому-либо признаку или группе признаков объектов, к-ые можно рассматр-ть как единое целое.Запись-структ-ый тип данных,состоящий из фиксиров-го числа компонентов разного типа.Определ-е типа записи начин-ся зарезервированным словом record(запись) и задает для каждого компонента,называемого полем,его тип и обозначающий это поле идент-р. Указатель-структ-ый тип данных,состоящий из неограниченного множ-ва указыв-ющих на однотипные эл-ты знач-ий, использ-ся при работе с динамич-ми стр-рами данных. Файл-структ-ый тип данных,состоящий из последоват-ти компонентов одного типа и одной длины.

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

13.1. Прогр-ие алг обраб дан-ых: поиск и сортировка.

Поиск: линейный, делением пополам.

Сортировка:

Характеризуется: кол-вом сравнений и присваив-ий.

  • Выбором

{Сортировка массива выбором (в порядке возрастания).

Идея решения: пусть часть массива (по K-й элемент включительно)

отсортирована. Нужно найти в неотсортированной части массива

минимальный элемент и поменять местами с (K+1)-м}

Program Sortirovka;

Var N, I, J, K, Pr : Integer; A : Array [1..30] Of Integer;

Begin

Write('Введите количество элементов: '); ReadLn(N);

For I := 1 To N Do

Begin

Write('Введите A[', I, '] '); Readln(A[I]);

End;

WriteLn;

For I := 1 To N - 1 Do

Begin

K := I;

For J := I + 1 To N Do If A[J] <= A[K] Then K := J;

Pr := A[I]; A[I] := A[K]; A[K] := Pr;

End;

For I := 1 To N Do Write(A[I], ' ');

End.

  • Обменом

  • Вставкой–массив делят на 2 части:отсортированная и нет, затем, находят место 1 элемента неотсортиров-ой части в отсортиров-ой и вставляют его. и т.д.

Прогр-ие алг обраб дан-ых: поиск и сортировка. Алг сущ-ет много для реш з-ч разл типа Сущ-ет неск з-ч, сложив-ся под влиянием практ требов Среди них з-чи сортир и поиска Возникли они вместе с возникн ком-ра лежат в основе раб с б.д. Задачи поиска звучат так: опред естьли в дан струк-ре искомый эл-нт , сколько раз он встреч, на каком месте стоит Методы 1) прост перебор 2)если упоряд-ть,м применить бинар-ый поиск(деление пополам) 3)полный перебор Простой перебор берется каждый эл-т и сравнив с искомым Бинарн поиск в упоряд массиве сущ-ет отношение упоряд-ти Взяв к-то эл-т мы можем м сказать искомый нах-ся до или после Берем вес массив и смотрим куда попадет искомый Соотв часть снова делим попалам, пока в оставшейся части не останется 1 эл-т или не попадет на искомый З-чи сортировки: в некот стр-ре треб постав эл-ты так, чтобы они были упоряд-ны по нек приз-ку Эти з-чи сложнее и важнее, чаще всего сорт-ки числовые Методы 1)сортир выбором, упоряд-ть в порядке возр-ия Очевидно, что первое место в массиве д занять наим эл-т, 2-ое место

16.2. Обработка текстовой инф В ТР для обр-ки текстов использ тип string Он чем-то похож на одномерн массив символов arrey[0..n] of char Кол-во символов от 0 до 255. Мы сами м задать длину строки string[n]. Строка- цепочка символов, к кажд символу м обратиться по его номеру индекса. Самый первый байт в строке имеет индекс 0 и сод-т инф-ию о текущ длине строки. Сами символы в строке начин-ся со 2-го байта с индекса 1. Обратиться к люб символу м след образом s:string; s[5]. S:string[10]-строка на 10 символов; lendth(S)-длина строки, insert(A,S,K)-вставляетА в строку S начиная с Kго, delete(S,N,K)-удаляет из строки S, N симв с Kго , pos(A,S)-номер А в строке S, copy(S,N,K)-копировать из S, N-символов, начиная с К, concat(S1,’o’,S2)-сцепить S1+’o’+S2, STR(x,S1)- процед преобраз люб вещ или целое число x в строку символов,VAL(S1,x,code)- процедура преобраз сроку в число вещ или целое x Параметр code=1, если преобраз заверш удачно. в противном случае он содерж номер позициив строке, где обнапужен ошибоч символ, операции =,<>, <, >, <=,>=, Выполн посимвольно слева направо.

17.2. Прогр-ая обраб граф инф-ии Обраб граф инф-ию в пределах прог-мы м с помощ модуля GRAPH. Он пред собой мощн библ граф подпрог-м универ назначения. Подпр-мы модуля обеспеч различ режимы раб многорежим адаптеров(VGA,SVGA,EGA,CGA), полностью использ их цветовые возм и разреш спос-ть. При использ граф прог-м треб автономный дравер граф адаптера(BGI-файл).Если прог-ма использ штриховые шрифты, кроме этого нужен один или несколько шрифтовых файлов(CHR-файлы) При необход драйвер и шрифты м.б. включены в тело пргог-мы еще на этапе компиляции Граф драй-ры: поддерж след граф адаптеры( и совмещ с ними) для наших комп-ов: EGA-3270 PC,VGA-IBM-8514 Для поддерж этих аппаратных средств использ след драйверы(для нас):EGAVGA.BGI-драйвер для EGA,VGA.Во время вып-ия прог-мы процед InitGraph авоматич распознает граф адаптер,установл на PC, загруж и инициализ соотв граф драйвер, перевод адаптер в граф режим и возвращ управ-ие вызывающей прог-ме Проц-ра CloseGraph выгруж драйвер из памяти и восст-ет текстов режим раб адаптер. Прог-мы модуля Graph позвол адресоваться к люб пикселу растрового граф экрана и управлять светимостью этого пиксела Для указания пиксела использ след сма коорд: верхн левый угол экрана имеет коорд(0,0) Прав нижн (адаптер VGA в режиме 640*480)-(639,479), центр экрана(319,239) Некот граф подпрог-мы использ понятие текущ указателя Указ-ль сод-т коорд того пиксела, начин с котор будет строиться изображ подпрог-ми LineTo,LineDel,OutText и др В модуле Graph имеется неск проц-р для рисов элемент граф фигур- точек, линий, окр-ей, дуг и т.п. При необход замкн фигуры м.б. закрашены различ цветами и стилями Проц-ры Arc(X,Y,St End R) рисует дугу радиусом R от нач St к конечн End,X,Y- центр,Circle(X1,Y1,X2,Y2)-рисует полосу заданного размера, Line(X1,Y1,X2,Y2)-линия, SetBKColor(Color)-цвет фона, SetColor(Color)-цвет рисован, SetFillPattern (P,Color)- устан произв образец штриховки, SetFillStyle(Pattern, Color)- устан образец штриховки и цвет,SetLineStyle(LineStyle, Pattern,t)-устан толщину и стиль линии