Содержание Введение______________________________________________________________3 1 Задание на курсовую работу ________________________________________3 2 Анализ задания ___________________________________________________3 3 Разработка структур данных ________________________________________4 4 Разработка алгоритмов_____________________________________________5 5 Текст программы__________________________________________________9 6 Тестирование программы___________________________________________20 7 Руководство пользователя __________________________________________22 Заключение____________________________________________________________26 Список использованных источников_______________________________________26
Введение Система программирования Турбо Паскаль представляет собой единство двух в известной степени самостоятельных начал: компилятора с языка программирования Паскаль и некоторой инструментальной программной оболочки, способствующей повышению эффективности создания программ. Процедуры и функции представляют собой важный инструмент Турбо Паскаля, позволяющий писать хорошо структурированные программы. В структурированных программах обычно легко прослеживается основной алгоритм, их нетрудно понять любому читателю, они проще в отладке и менее чувствительны к ошибкам программирования. Все эти свойства являются следствием важной особенности процедур (функций), каждая из которых представляет собой во многом самостоятельный фрагмент программы, связанный с основной программой лишь с помощью нескольких параметров. Модули представляют собой прекрасный инструмент для разработки библиотек прикладных программ и мощное средство модульного программирования. В Турбо Паскале имеется 8 стандартных модулей, в которых содержится большое число разнообразных типов, констант, процедур и функций. 1 Задание на курсовую работу В прямоугольной матрице выявить все подматрицы, по периметру которых расположены элементы, из которых можно образовать геометрическую прогрессию. 2 Анализ задания Задачей курсового проектирования является разработка программного продукта, который позволил бы выявить в прямоугольной матрице все подматрицы, по периметру которых расположены элементы, из которых можно образовать геометрическую прогрессию. Должен быть разработан пользовательский интерфейс, который бы обеспечил более удобную и наглядную работу с программой. Данная программа должна выполнять следующие действия: - ввод данных с клавиатуры и из файла; - обработку данных в соответствии с заданием; - вывод результата на экран и в файл; - интерфейс пользователя в текстовом режиме, содержащий меню (с подменю) и окна; - обеспечивать различные способы ввода и вывода данных; - использовать возможности модуля CRT; - использовать структуры данных; - программный код в виде процедур и функций; - использовать программирование клавиатуры; - использовать манипулятор «мышь»; - использовать динамические структуры данных; - собственный модуль. 3 Разработка структур данных Основные переменные: Mxx – исходная целочисленная матрица (максимум 10х10); Per – целочисленные элементы периметра; N, M – количество строк и столбцов матрицы; L – количество элементов по периметру подматрицы; mf – флаг ввода исходной матрицы – true, false– матрица не введена; fileresu, filework – текстовые файлы с исходной матрицей и с результатом соответственно; fil – способ вывода результата true – в файл, false – на экране в окне; f – способ получения результата false– все подматрицы или true– по условию. Стандартные модули: crt, app, objects, menus, drivers, views, dialogs, msgbox, memory, dos, stddlg, editors и собственный модуль: mod_matr. 4 Разработка алгоритмов Опишем основные процедуры и функции программы. Процедура GetRandomMatrix. Процедура автоматического ввода матрицы со значениями. Схема алгоритма данной процедуры представлена на рисунке 1. Рисунок 1 – Схема алгоритма процедуры GetRandomMatrix. 3 блок – вводим количество строк n, количество столбцов m и максимальное predзначение элемента матрицы, 4-6 блоки – вводим случайные элемента матрица, не превышая pred, 7 блок – устанавливаем флаг в true, т. е. матрица введена, 8 блок – выводим матрицу в окне программы. Процедура InputMatrix. Процедура ввода матрицы со значениями вручную. Схема алгоритма данной процедуры представлена на рисунке 2. Рисунок 2 – Схема алгоритма процедуры InputMatrix. 3 блок – вводим количество строк n, количество столбцов m, 4-6 блоки – вводим элементы матрицы, 7 блок – устанавливаем флаг в true, т. е. матрица введена, 8 блок – выводим матрицу в окне программы. Процедура Sort. Процедура сортировки значений периметра подматрицы по возрастанию. Схема алгоритма данной процедуры представлена на рисунке 3. Рисунок 3 – Схема алгоритма процедуры Sort. 2, 3 блок – перебираем элементы периметра подматрицы, 4 блок – сравниваем текущее значение элемента матрицы меньше следующего, если да то переходим к 5 блоку, иначе к 3, 5 блок – меняем значения местами. Процедура GetPerimetr. Процедура определения элементов подматрицы по периметру. Схема алгоритма данной процедуры представлена на рисунке 4. Рисунок 4 – Схема алгоритма процедуры GetPerimetr. 2, 3 блок – обнуляем значения элементов периметра, 4 блок – количество элементов в перимерте = 1, 5, 6 блоки – перебираем элементы столбца периметра и заносим в массив per, 7, 8 блоки – перебираем элементы строки периметра и заносим в массив per, 9 блок – заносим в переменную l количество элементов в периметре подматрицы. Функция GeomProg. Функция определения геометрической прогрессии из элементов периметра подматрицы. Схема алгоритма данной функции представлена на рисунке 5. Рисунок 5 – Схема алгоритма процедуры GeomProg. 2 блок – вызов процедуры сортировки, 3 блок – флаг образования геометрической прогрессии, 4 блок – второе значение элемента массива периметра делим на первое, 5 блок – перебираем элементы массива периметра, 6 блок – следующее значение элемента массива делим на текущее и сравниваем с dv, 7 блок – не геометрическая прогрессия.
Рефераты по информатикеСодержание Введение______________________________________________________________3 1 Задание на курсовую работу
Оценок: 294 (Средняя 5 из 5)
Специалисты RetsCorp работают в digital-сфере более 7 лет. За это время мы разработали более 500+ успешных проектов. Основываясь на своем опыте и знании рынка, мы с уверенностью можем сказать, что будет работать, а что — нет. Заказывая создание лендинга для бизнеса в нашей студии, вы получаете работающие решения, необходимые именно вашему бизнесу.
Сотрудничая с нами, вы будете не клиентом, а нашим партнером. Благодаря этому мы будем развивать ваш бизнес как собственный. Мы так же как и вы заинтересованы в успехе проекта, поскольку ваша успешность будет нашей рекламой.