Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Модуль GraphABC для создания программ в графическом режиме на языке программирования Pascal

Автор:   •  Январь 23, 2022  •  Лабораторная работа  •  1,972 Слов (8 Страниц)  •  427 Просмотры

Страница 1 из 8

Содержание

Введение        3

Основная часть        4

Задача 1        4

Используемые переменные        4

Алгоритм решения задачи        4

Исходный код программы        5

Задача 2        10

Используемые переменные        10

Алгоритм решения задачи        10

Исходный код программы        11

Блок-схемы        13

Тестирование программ        15

Заключение        17


Введение

Линейный список – это последовательность из нуля или более элементов (узлов), главной особенностью которого является такое относительное расположение узлов, будто они образуют одну линию. Если в линейном списке n>0 элементов, то узел j[k] (0<k<n) следует непосредственно за j[k-1] и предшествует j[k+1]. В общем случае над линейными списками могут быть определены девять операций:

1. Доступ к узлу k для просмотра или модификации хранимых данных;

2. Вставка нового узла непосредственно перед или после узла k;

3. Удаление узла k;

4. Объединение линейных списков в новом списке;

5. Разбиение списка на линейные списки;

6. Копирование списка;

7. Нахождение количества узлов списка;

8. Сортировка узлов списка в некотором порядке, определяемом содержимым записанных в узле данных;

9. Поиск узла в соответствии со значением, связанным с содержимым записанных в узле данных.

Следует выделить особые случаи, когда обрабатывается первый или последний элемент списка, поскольку доступ к таким узлам организовать проще, чем к остальным.

Модуль GraphABC представляет собой простую графическую библиотеку и предназначен для создания не событийных графических и анимационных программ в процедурном и частично в объектном стиле. Рисование осуществляется в специальном графическом окне, возможность рисования в нескольких окнах отсутствует. Кроме этого, в модуле GraphABC определены простейшие события мыши и клавиатуры, позволяющие создавать элементарные событийные приложения. Основная сфера использования модуля GraphABC – обучение.

Основная часть

Задача 1

Используйте линейные списки для хранения последовательности чисел. Опишите процедуру, которая вставляет:

а) новый элемент E после первого элемента непустого списка;

б) новый элемент E1 за каждым вхождением элемента E.

Используемые переменные

m – количество элементов списка;

x – элемент списка;

E, E1 – заданные элементы;

S, L – списки;

i – счетчик цикла.

Алгоритм решения задачи

  1. Создадим список L – введем количество элементов m и заполним список целыми числами в диапазоне от -10 до +10;
  2. Выводим полученный список L на экран;
  3. Введем с клавиатуры элемент E;
  4. Если в списке L нет элементов (m = 0), то выведем информацию об этом и перейдем к п.7;
  5. Иначе вставляем элемент E в список L за первым элементом этого списка;
  6. Выводим список L на экран;
  7. Вводим элементы E, E1 с клавиатуры;
  8. Выполняем поиск номеров (вхождений) элемента E в списке L и сохраняем их в массиве arr из k элементов (по числу найденных вхождений);
  9. Если k не равно нулю, то для каждого элемента с номером i в массиве arr выполняем вставку E1 в L за arr[i], а также увеличиваем arr[i + 1] на I;
  10. Иначе (k равно нулю) выводим сообщение о том, что элемент E не найден в списке L;
  11. Выводим полученный список L на экран.

Исходный код программы

{- описание типа списка -}

type

  list = ^node;// тип списка

  node = record         // узел списка

    info: integer;      // целое число - инф. часть списка

    next: list;         // указатель на следующий элемент списка

  end;

 

{- определение типа массива из 1000 целых чисел -}

type nums = array[1..1000] of integer;

...

Скачать:   txt (15.6 Kb)   pdf (287.1 Kb)   docx (674.9 Kb)  
Продолжить читать еще 7 страниц(ы) »
Доступно только на Essays.club