ВУЗ:
Составители:
Так
ое тестирование следует выполнить до сдачи задания с тем ,
чтобы вовремя внести в программу необходимую корректировку.
Порядок проведения экзамена: на выполнение задания отводится
два академических часа; рекомендуется один час отвести на
разработку проекта и кодирование программы на языке
программирования (на бумаге) и один час - на отладку и тестирование
программы .
Среды программирования - Turbo-Pascal, Borland-Pascal, Turbo-C,
Delphi 2.0;
операционные среды - MS-DOS, Windows 3.11, WindowsNT.
Положительно могут быть оценены только те программы , которые
полностью прошли этапы проектирования , отладки и тестирования и
не содержат очевидных ошибок.
Невыполнение любого из указанных в п.п. 1 - 5 требований может
служить основанием для снижения оценки. Так , например,
использование массива в качестве абстрактной структуры для
представления содержимого текстового файла (см . п.3)
свидетельствует о нерациональном использовании памяти и является
основанием для снижения оценки.
1.3. Типология заданий
А . Обработка файлов последовательного доступа:
- создание файла;
- поиск (замена, преобразование , удаление) записи по заданному
признаку;
- замена (преобразование ) полей записей файла;
- копирование файлов с частичным преобразованием записей;
- сортировка записей по заданному ключу или признаку .
В . Обработка текстовых файлов :
- создание файла;
- преобразование строки литер в число (числа в строку литер);
- поиск (замена, преобразование , удаление) строки по заданному
признаку;
- поиск (замена, преобразование, удаление) слов по заданному
признаку;
- поиск (замена, преобразование, удаление ) литер по заданному
признаку;
- замена (преобразование) литер с сохранением строчной структуры
j:=i
-
1;
{запоминаем значение вставляемого элемента}
Elem:=A[i];
{поиск места, на котором должен находиться i-ый элемент}
while (j>0) and (A[j]^.Key>Elem^.Key) do
begin
{если элемент A[j] больше чем Elem, то он будет расположен
правее чем сейчас ; элемент A[j] подвигается вправо и сравнение
продолжается }
A[j+1]:=A[j];
j:=j-1;
end;
{после выхода из цикла место элемента найдено: (j+1)}
A[j+1]:=Elem;
end;
end;
Бинарные вставки
Пусть на i-ом шаге последовательность из i-
1 первых элементов
массива упорядочена. Добавление i-го элемента в эту
последовательность производится упорядоченно : ищется место для
нового элемента методом бина
рного поиска; элементы , которые
должны стоять за i-
ым элементом сдвигаются вправо, и новый элемент
становится на свое место .
procedure Bynary_Insert (var A : tArray);
var Place,i,j:integer;
Elem:PtrElem;
{нерекурсивная процедура поиска места для элемента Elem,
left и right – левая и правая граница уже отсортированного отрезка}
Function FindPlace (left,right:Integer;Elem:PtrElem):integer;
var middle:Integer;
begin
repeat
{выбираем средний элемент из отрезка}
middle:=(Left+Right) div 2;
{сравниваем со средним элементом элемент, который надо
вставить}
if A[middle]^.Key>Elem^.Key then
7 42
j:=i-1; Такое тестирование следует выполнить до сдачи задания с тем, {запоминаем значение вставляемого элемента} чтобы вовремя внести в программу необходимую корректировку. Elem:=A[i]; {поиск места, на котором должен находиться i-ый элемент} Порядок проведения экзамена: на выполнение задания отводится while (j>0) and (A[j]^.Key>Elem^.Key) do два академических часа; рекомендуется один час отвести на begin разработку проекта и кодирование программы на языке {если элемент A[j] больше чем Elem, то он будет расположен программирования (на бумаге) и один час - на отладку и тестирование правее чем сейчас; элемент A[j] подвигается вправо и сравнение программы. продолжается} Среды программирования - Turbo-Pascal, Borland-Pascal, Turbo-C, A[j+1]:=A[j]; Delphi 2.0; j:=j-1; операционные среды - MS-DOS, Windows 3.11, WindowsNT. end; Положительно могут быть оценены только те программы, которые {после выхода из цикла место элемента найдено: (j+1)} полностью прошли этапы проектирования, отладки и тестирования и A[j+1]:=Elem; не содержат очевидных ошибок. end; Невыполнение любого из указанных в п.п. 1 - 5 требований может end; служить основанием для снижения оценки. Так, например, использование массива в качестве абстрактной структуры для Бинарные вставки представления содержимого текстового файла (см. п.3) свидетельствует о нерациональном использовании памяти и является Пусть на i-ом шаге последовательность из i-1 первых элементов основанием для снижения оценки. массива упорядочена. Добавление i-го элемента в эту последовательность производится упорядоченно: ищется место для нового элемента методом бинарного поиска; элементы, которые 1.3. Типология заданий должны стоять за i-ым элементом сдвигаются вправо, и новый элемент становится на свое место. А. Обработка файлов последовательного доступа: - создание файла; procedure Bynary_Insert (var A : tArray); - поиск (замена, преобразование, удаление) записи по заданному var Place,i,j:integer; признаку; Elem:PtrElem; - замена (преобразование) полей записей файла; - копирование файлов с частичным преобразованием записей; {нерекурсивная процедура поиска места для элемента Elem, - сортировка записей по заданному ключу или признаку. left и right – левая и правая граница уже отсортированного отрезка} В. Обработка текстовых файлов: Function FindPlace (left,right:Integer;Elem:PtrElem):integer; - создание файла; var middle:Integer; - преобразование строки литер в число (числа в строку литер); begin - поиск (замена, преобразование, удаление) строки по заданному repeat признаку; {выбираем средний элемент из отрезка} - поиск (замена, преобразование, удаление) слов по заданному middle:=(Left+Right) div 2; признаку; {сравниваем со средним элементом элемент, который надо - поиск (замена, преобразование, удаление) литер по заданному вставить} признаку; if A[middle]^.Key>Elem^.Key then - замена (преобразование) литер с сохранением строчной структуры 42 7
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »