ВУЗ:
Составители:
комментарием , но если программ
а достаточно сложна и имеет
большой объем , то лишняя строка комментария никогда не помешает
при чтении программы .
Следует также включить в начало программы строки комментария с
фамилией и инициалами автора программы , его координатами и
кратким содержанием задания .
3. Успех в выполнении задания , а также качество программы (которое
является
важнейшим компонентом в характеристике программы при ее оценке)
во многом определяются выбором абстрактной структуры данных и
способом ее реализации. При выборе структуры данных (простые
переменные, массивы , записи, множества, файлы , линейные цепочки,
деревья ) следует исходить из соображений эффективности решения
поставленной задачи , то есть решения с наименьшими затратами
времени исполнения программы и наименьшими расходами памяти
для представления данных. Так , например, если из постановки задачи
можно извлечь информацию о границах диапазона возможных
значений количества элементов в обрабатываемой структуре, и этот
диапазон невелик , то возможно использование массива
, либо
динамической структуры (стека, очереди), реализованной на базе
массива. Если такой информации нет, диапазон возможных значений
количества элементов достаточно широк, следует воспользоваться
динамическими структурами, реализованными на базе цепочного
представления , либо файлом .
4. При оценке качества созданной программы учитывается также
организация
интерфейса с пользователем : комфортность диалога, полнота запросов
на вводимые данные, удобное и полное представление результатов .
5. Качество программы оценивается также широтой диапазона
возможных значений исходных (входных) данных. Поэтому при
тестировании программы следует предусмотреть тесты ,
представляющие собой особые и критические случаи, так как именно
они могут приводить к аварийному (не предусмотренному в
программе) прерыванию выполнения программы . Например, в
задании на обработку текстовых файлов возможным частным случаем
исходных данных может быть
а) пустой файл;
б ) файл, не содержащий строки (слова, литеры ) с заданным свойством.
{если средний элемент больше чем вставляемый, то изменяется
правая граница отрезка, то есть поиск места для вставляемого
элемента будет продолжаться в левой части }
Right:=middle-1
else
{если средний элемент меньше чем вставляемый, то изменяется
левая граница отрезка, то есть поиск места для вставляемого элемента
будет продолжаться в правой части }
Left :=middle+1;
{такие действия продолжаются до тех пор, пока левая граница не
станет больше правой}
until Left>Right;
{после выхода из цикла местоположение элемента найдено : left }
FindPlace:=Left;
end;
begin
{вставляются поочередно все элементы , начиная со второго по N-
ый}
for i:=2 to N do
begin
{запоминается элемент, который необходимо вставить}
elem:=A[i];
{определяется место , где он должен находиться }
Place:=FindPlace(1,i-1,Elem);
{все элементы , которые должны стоять после вставляемого,
сдвигаются на одну ячейку вправо}
for j:=i-1 downto Place do A[j+1]:=A[j];
{вставляемый элемент ставится на свое место }
A[Place]:=Elem
end
end;
Метод Шелла или сортировка с убывающим шагом
Сначала отдельно группируются и сортируются элементы ,
отстоящие друг от друга на некотором расстоянии h1 (h1 ≥ 1), методом
простых вставок, затем элементы перегруппируются (шаг
уменьшается и становится равным некоторому значению h2), и после
этого снова сортируются . Процесс продолжается до тех пор, пока шаг
сортировки не станет равным 1.
6 43
комментарием, но если программа достаточно сложна и имеет {если средний элемент больше чем вставляемый, то изменяется большой объем, то лишняя строка комментария никогда не помешает правая граница отрезка, то есть поиск места для вставляемого при чтении программы. элемента будет продолжаться в левой части} Следует также включить в начало программы строки комментария с Right:=middle-1 фамилией и инициалами автора программы, его координатами и else кратким содержанием задания. {если средний элемент меньше чем вставляемый, то изменяется левая граница отрезка, то есть поиск места для вставляемого элемента 3. Успех в выполнении задания, а также качество программы (которое будет продолжаться в правой части} является Left :=middle+1; важнейшим компонентом в характеристике программы при ее оценке) {такие действия продолжаются до тех пор, пока левая граница не во многом определяются выбором абстрактной структуры данных и станет больше правой} способом ее реализации. При выборе структуры данных (простые until Left>Right; переменные, массивы, записи, множества, файлы, линейные цепочки, {после выхода из цикла местоположение элемента найдено: left } деревья) следует исходить из соображений эффективности решения FindPlace:=Left; поставленной задачи, то есть решения с наименьшими затратами end; времени исполнения программы и наименьшими расходами памяти для представления данных. Так, например, если из постановки задачи begin можно извлечь информацию о границах диапазона возможных {вставляются поочередно все элементы, начиная со второго по N- значений количества элементов в обрабатываемой структуре, и этот ый} диапазон невелик, то возможно использование массива, либо for i:=2 to N do динамической структуры (стека, очереди), реализованной на базе begin массива. Если такой информации нет, диапазон возможных значений {запоминается элемент, который необходимо вставить} количества элементов достаточно широк, следует воспользоваться elem:=A[i]; динамическими структурами, реализованными на базе цепочного {определяется место, где он должен находиться} представления, либо файлом. Place:=FindPlace(1,i-1,Elem); {все элементы, которые должны стоять после вставляемого, 4. При оценке качества созданной программы учитывается также сдвигаются на одну ячейку вправо} организация for j:=i-1 downto Place do A[j+1]:=A[j]; интерфейса с пользователем: комфортность диалога, полнота запросов {вставляемый элемент ставится на свое место} на вводимые данные, удобное и полное представление результатов. A[Place]:=Elem end 5. Качество программы оценивается также широтой диапазона end; возможных значений исходных (входных) данных. Поэтому при тестировании программы следует предусмотреть тесты, Метод Шелла или сортировка с убывающим шагом представляющие собой особые и критические случаи, так как именно они могут приводить к аварийному (не предусмотренному в Сначала отдельно группируются и сортируются элементы, программе) прерыванию выполнения программы. Например, в отстоящие друг от друга на некотором расстоянии h1 (h1 ≥1), методом задании на обработку текстовых файлов возможным частным случаем простых вставок, затем элементы перегруппируются (шаг исходных данных может быть уменьшается и становится равным некоторому значению h2), и после а) пустой файл; этого снова сортируются. Процесс продолжается до тех пор, пока шаг б) файл, не содержащий строки (слова, литеры) с заданным свойством. сортировки не станет равным 1. 6 43
Страницы
- « первая
- ‹ предыдущая
- …
- 4
- 5
- 6
- 7
- 8
- …
- следующая ›
- последняя »