Доклад: Основні принципи модульного програмування та стеки

Алгоритм побудови черги

1. Виділити пам'ять під поточний елемент черги new(curr).

2. Запам'ятати покажчик на перший елемент first:=curr;

3. Запам'ятати покажчик на попередній елемент prev:=curr;

4. Ввести дані в пам'ять: readln(curr^.data)

5. Встановити покажчик на наступний елемент сигг^.nехt:=nіІ;

6. Зв'язати поточний елемент із попереднім, перепризначивши покажчик prev^.next :=curr;

7. Виділити пам'ять під новий елемент та повторити дії пп.3-7.

7.1.2. Приклад програми. Умова задачі.

Побудувати список з одночасним впорядкування елементів списку в порядку зростання. Виконати операції додавання, вилучення, друкування елементів списку.

Алгоритм

1. Список порожній.

2. Повторювати дії, поки не натиснута клавіша 'Q':

2.1. Виведення списку на екран.

2.2. Додавання елементів до списку і їх сортування:

2.2.1. Виділити пам'ять для нового елемента;

2.2.2. Ввести елемент в пам'ять;

2.2.3. Якщо список порожній, то перепризначити покажчик на новий елемент, покажчику на наступний елемент присвоїти значення nil;

2.2.4. Якщо список не порожній, то, якщо нове значення елемента менше першого, розмістити елемент на початку списку;

2.2.5. Інакше пошук місця вставки нового елемента в списку елементів.

2.3. Вилучення заданого елемента:

2.3.1. Якщо список не порожній, то - ведення елемента, що вилучається;

2.3.2. Якщо потрібний елемент знайдений, то перепризначити покажчики; в противному різі виконувати пошук потрібного елемента, вилучення його і звільнення пам'яті.

3. Кінець.

Приклад програми

Умова задачі: Організувати список із операціями впорядкування елементів, вилучення елементів із списку, друкування списку.

uses crt;

type

ptr=^zap; {тип покажчик на запис}

К-во Просмотров: 416
Бесплатно скачать Доклад: Основні принципи модульного програмування та стеки