ebook img

Основы программирования на языке Turbo Pascal PDF

268 Pages·2011·1.048 MB·Russian
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Основы программирования на языке Turbo Pascal

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ Государственное образовательное учреждение высшего профессионального образования УЛЬЯНОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ И. В. Беляева ОСНОВЫ ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ TURBO PASCAL Учебное пособие Для студентов, обучающихся по специальности 03130165 «Теоретическая и прикладная лингвистика», направлений подготовки бакалавров 035700 «Лингвистика» и 5528 «Информатика и вычислительная техника». Ульяновск 2011 УДК 681.3 (076) ББК 32.973я7 И 26 Рецензенты: профессор, доктор технических наук УлГУ И. В. Семушин; кафедра «Информационные технологии» УлГУ. Утверждено редакционно-издательским советом университета в качестве учебного пособия Беляева, И. В. И 26 Основы программирования на языке Turbo Pascal : учебное пособие / И. В. Беляева. – Ульяновск : УлГТУ, 2011. – 266 с. ISBN 978-5-9795-0771-2 Предназначено для студентов вуза, начинающих изучать программирование на языке Turbo Pascal и уже знакомых с основными конструкциями языка (развилки, циклы), а также знакомых с консольным вводом/выводом информации в Turbo Pascal (процедуры read/write). Учебное пособие может быть использованы студентами младших курсов, изучающих дисциплины «Математика и информатика», «Программирование и информатика», «Основы программирования», «Программирование на языке высокого уровня». Подготовлено на кафедре «Вычислительная техника». УДК 681.3 (075) ББК 32.973я7 © Беляева И. В., 2011 ISBN 978-5-9795-0771-2 © Оформление. УлГТУ, 2011 ОГЛАВЛЕНИЕ ВВЕДЕНИЕ ............................................................................................................................................................. 7  СТРУКТУРА ТИПОВ ДАННЫХ В ЯЗЫКЕ Turbo Pascal ............................................................................. 9  Простые типы данных ...................................................................................................................................... 9  Пользовательские типы данных ..................................................................................................................... 10  Структурированные типы данных ................................................................................................................ 10  ОБРАБОТКА ОДНОМЕРНЫХ МАССИВОВ ................................................................................................ 12  Понятие массива .............................................................................................................................................. 12  Индексы массива .............................................................................................................................................. 13  Представление массива в памяти .................................................................................................................. 15  Пользовательский тип – массив ..................................................................................................................... 17  ОСНОВНЫЕ АЛГОРИТМЫ ............................................................................................................................ 18  Общие замечания .............................................................................................................................................. 18  Ввод/вывод массива .......................................................................................................................................... 19  Использование генератора псевдослучайных чисел ...................................................................................... 20  Вычисление суммы и среднего арифметического элементов массива ........................................................ 21  Поиск максимального/минимального элемента массива ............................................................................. 23  Подсчет количества элементов, удовлетворяющих заданному условию ................................................... 24  Удаление элемента из массива ........................................................................................................................ 25  Вставка новых элементов в массив ................................................................................................................ 27  Удаление нескольких элементов массива ....................................................................................................... 29  Обработка нескольких массивов .................................................................................................................... 33  Проверка соседних элементов массива .......................................................................................................... 37  Сортировка массива и работа с отсортированным массивом .................................................................. 38  Задачи для самостоятельной работы ........................................................................................................... 41  Задачи на сканирование всего массива ........................................................................................................... 42  Поиск элементов в массиве ............................................................................................................................. 43  Поиск цепочек в массиве .................................................................................................................................. 44  Удаление одиночных элементов ...................................................................................................................... 44  Удаление элементов массива по признаку ..................................................................................................... 45  Удаление цепочек элементов массива ............................................................................................................ 46  Вставка элементов в массив ........................................................................................................................... 46  Создание дополнительного массива ............................................................................................................... 47  Перестановка элементов массива .................................................................................................................. 48  Перестановка цепочек ..................................................................................................................................... 48  Подсчет количества встреч элементов ........................................................................................................ 49  Обработка двух массивов ............................................................................................................................... 49  Обработка трех массивов ............................................................................................................................... 50  3 Добавление элементов в уже отсортированный массив ............................................................................. 51  ЗАДАНИЯ НА ЛАБОРАТОРНУЮ РАБОТУ ................................................................................................. 52  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................... 52  Задачи очень простые ...................................................................................................................................... 52  Задачи простые ................................................................................................................................................ 53  Задачи средние .................................................................................................................................................. 55  Задачи сложные ................................................................................................................................................ 56  ОБРАБОТКА ДВУХМЕРНЫХ МАССИВОВ ................................................................................................. 59  Размещение элементов массивов в памяти ................................................................................................... 60  Пользовательский тип–массив ....................................................................................................................... 61  ОСНОВНЫЕ АЛГОРИТМЫ ............................................................................................................................ 61  Сканирование двухмерного массива ............................................................................................................... 61  Условные обозначения и имена, используемые в примерах ........................................................................... 62  Заполнение массива значениями по умолчанию ............................................................................................. 62  Заполнение массива случайными числами ...................................................................................................... 63  Ввод/вывод массива .......................................................................................................................................... 64  Вычисление суммы и среднего арифметического элементов массива ........................................................ 67  Поиск максимального/минимального элемента массива ............................................................................. 69  Подсчет количества элементов, удовлетворяющих заданному условию ................................................... 72  Перестановка строк и столбцов .................................................................................................................... 73  Удаление и вставка строк и столбцов ........................................................................................................... 74  Обработка квадратного массива ................................................................................................................... 75  ЗАДАНИЯ НА ЛАБОРАТОРНУЮ РАБОТУ ................................................................................................. 77  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................... 78  Задачи простые ................................................................................................................................................ 78  Задачи средние .................................................................................................................................................. 79  Задачи сложные ................................................................................................................................................ 80  ПРОЦЕДУРЫ И ФУНКЦИИ ............................................................................................................................. 82  ПРОЦЕДУРЫ И ФУНКЦИИ БЕЗ ПАРАМЕТРОВ ........................................................................................ 82  Простейшие процедуры ................................................................................................................................... 82  Вызов процедур ................................................................................................................................................. 88  Глобальные и локальные переменные ............................................................................................................. 90  Объявление глобальных и локальных переменных ......................................................................................... 92  Функции без параметров ................................................................................................................................. 93  Вызов функции .................................................................................................................................................. 94  Пример использования процедур и функций без параметров ....................................................................... 97  Оформление исходного текста программы ................................................................................................ 101  Правила написания комментариев в тексте программы ........................................................................... 102  4 ПРОЦЕДУРЫ И ФУНКЦИИ С ПАРАМЕТРАМИ ....................................................................................... 103  Пример задачи с тремя массивами ............................................................................................................... 103  Параметры подпрограмм: параметры–значения и параметры–переменные ......................................... 108  Обозначение параметров процедур и функций ............................................................................................ 109  Задача с тремя массивами с использованием подпрограмм с параметрами ........................................... 110  Параметры-константы ................................................................................................................................ 114  Задача с поиском цепочек в массиве ............................................................................................................. 115  ЗАДАНИЯ НА ЛАБОРАТОРНУЮ РАБОТУ ............................................................................................... 122  Обработка одномерного массива с использованием процедур и функций без параметров .................... 122  Обработка одномерного массива с использованием процедур и функций с параметрами .................... 123  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................. 123  Задачи простые .............................................................................................................................................. 123  Задачи средние ................................................................................................................................................ 125  Задачи сложные .............................................................................................................................................. 126  СИМВОЛЫ И СТРОКИ ................................................................................................................................... 129  СИМВОЛЬНЫЙ ТИП ..................................................................................................................................... 129  Процедуры и функции для работы с символами .......................................................................................... 132  Примеры использования стандартных процедур и функций обработки символов ................................. 135  СТРОКИ .......................................................................................................................................................... 137  Встроенный тип String .................................................................................................................................. 137  Операции над строками string ...................................................................................................................... 141  Правила сравнения двух строк ...................................................................................................................... 143  Стандартные процедуры и функции для работы со строками ................................................................ 144  Примеры использования стандартных процедур и функций обработки строк ...................................... 150  МНОЖЕСТВА .................................................................................................................................................... 152  Операции над множествами ......................................................................................................................... 153  Пример использования множеств ................................................................................................................ 155  Пример обработки массива строк ............................................................................................................... 158  Задача «Поиск символов в тексте» .............................................................................................................. 158  Задача «Поиск слов в строке и удаление символов» ................................................................................... 166  ЗАДАНИЯ НА ЛАБОРАТОРНАЮ РАБОТУ ............................................................................................... 171  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................. 171  Задачи простые .............................................................................................................................................. 171  Задачи средние ................................................................................................................................................ 172  Задачи сложные .............................................................................................................................................. 173  ФАЙЛЫ ............................................................................................................................................................... 175  Работа с файлами .......................................................................................................................................... 176  5 Основные процедуры и функции для работы с файлами ............................................................................ 178  ТИПИЗИРОВАННЫЕ ФАЙЛЫ ..................................................................................................................... 181  ТЕКСТОВЫЕ ФАЙЛЫ ................................................................................................................................... 182  ЗАДАНИЯ НА ЛАБОРАТОРНАЮ РАБОТУ ............................................................................................... 186  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................. 186  ЗАПИСИ .............................................................................................................................................................. 191  ОБЪЯВЛЕНИЕ И ИСПОЛЬЗОВАНИЕ ЗАПИСЕЙ ...................................................................................... 191  Объявление типа записи ................................................................................................................................ 191  Объявление и использование переменных типа записи ............................................................................... 192  Работа с массивом записей ........................................................................................................................... 195  Работа с файлом записей .............................................................................................................................. 195  Хранение записей в памяти компьютера ..................................................................................................... 197  Вариантные записи ........................................................................................................................................ 199  Хранение вариантных записей в памяти компьютера ............................................................................... 204  ЗАДАНИЯ НА ЛАБОРАТОРНУЮ РАБОТУ ............................................................................................... 206  Описание пользовательского интерфейса:.................................................................................................. 206  Описание модульной структуры: ................................................................................................................. 207  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................. 207  ПРИМЕР ВЫПОЛНЕНИЯ ЛАБОРАТОРНОЙ РАБОТЫ ............................................................................ 210  УКАЗАТЕЛИ. РАБОТА С УКАЗАТЕЛЯМИ ................................................................................................ 231  Работа с динамической памятью................................................................................................................. 240  ЗАДАНИЯ НА ЛАБОРАТОРНУЮ РАБОТУ ............................................................................................... 244  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................. 245  СПИСКИ .............................................................................................................................................................. 249  ЗАДАНИЯ НА ЛАБОРАТОРНУЮ РАБОТУ ............................................................................................... 256  ВАРИАНТЫ ЗАДАНИЙ .................................................................................................................................. 256  ПРИМЕР ВЫПОЛНЕНИЯ ЛАБОРАТОРНОЙ РАБОТЫ ............................................................................ 258  ЗАКЛЮЧЕНИЕ .................................................................................................................................................. 265  БИБЛИОГРАФИЧЕСКИЙ СПИСОК ........................................................................................................... 266  6 ВВЕДЕНИЕ Выписка из ГОС ВПО по направлению подготовки дипломированного специалиста 03130165 «Теоретическая и прикладная лингвистика» Индекс Наименование дисциплины и её основные разделы Всего часов Математика и информатика 300 ЕН.Ф.01 Аксиоматический метод, основные структуры, составные структуры, вероятности, языки и программирование, алгоритмы, компьютерный практикум. В настоящем учебном пособии раскрываются дидактические единицы, позволяющие в более углубленном виде изучить языки и программирование Катализатором научно-технического прогресса является широкое использование ЭВМ. Без компьютеров немыслимо развитие производства и науки. Для увеличения объемов выпускаемой продукции и повышения качества необходимо внедрять во все отрасли народного хозяйства автоматизированные и роботизированные комплексы. Формированию будущего специалиста способствует развитие его алгоритмического мышления. Даже если ему непосредственно не придется программировать при разработке и внедрении новых производственных задач с использованием ЭВМ, то может грамотно поставить задачу математику-программисту, обладая алгоритмическим мышлением. Данное учебное пособие предназначено для студентов вуза, начинающих изучать программирование на языке Turbo Pascal и уже знакомых с основными конструкциями языка (развилки, циклы), а также знакомых с консольным вводом/выводом информации в Turbo Pascal (процедуры read/write). (Консольный ввод/вывод – это ввод с клавиатуры, а вывод –на экран дисплея). 7 Задачи для изучения программирования – этот раздел полезен для обучающихся самостоятельно. Задания на лабораторную работу – этот раздел включает в себя общее задание и варианты разной степени сложности (от наипростейших до относительно сложных). Данное учебное пособие охватывает следующие разделы:  структура типов данных языка Turbo Pascal, в котором приведена общая схема типов данных и примеры по каждому типу. Даны пояснения по их использованию;  формат описания и использования одномерных и двумерных массивов;  описание и использование пользовательских процедур и функций. На основе обработки массивов даны рекомендации по их использованию;  описание и использование записей, файлов, динамических структур данных;  основные алгоритмы обработки. 8 СТРУКТУРА ТИПОВ ДАННЫХ В ЯЗЫКЕ TURBO PASCAL Каждый элемент данных относится к одному из конечного множества типов, допустимых для конкретного языка программирования. Тип – это множество значений, которые могут принимать объекты программы, и совокупность операций, допустимых над этими значениями. Все типы данных языка Turbo Pascal разделяются на две группы: скалярные (простые) и структурированные (составные). Простые типы данных Целочисленные типы данных (Integer, Byte, Word) представляют собой значения, которые могут использоваться в арифметических выражениях и занимать память от 1 до 4 байт. Тип Диапазон Размер в байтах Byte 0 ... 255 1 Shortint -128 … 127 1 Word 0 ... 65535 2 Longint -2147483648 ... 2147483647 4 Вещественные типы данных (Real, Double) представляют собой вещественные значения, которые могут использоваться в арифметических выражениях и занимать память от 4 до 10 байт. Тип Диапазон Знач. Размер в байтах цифры Real 2.9E-39 …1.7E38 11-12 6 Single 1.5E-45 ... 3.4E38 7-8 4 Double 5E-324 ... 1.7E308 15-16 8 Extended 1.9*10E – 4951..1.1*10E4932 19-20 10 Comp -2E+63+1..2E+63-1- 10-20 8 Символьный тип данных (char) определяется множеством значений кодовой таблицы ASCII. Для переменной символьного типа требуется 1 байт. 9 Логический тип данных (Boolean) представлен двумя значениями: (истина) и (ложь). Он широко применяется в логических выражениях и выражениях отношения. Пользовательские типы данных В Turbo Pascal существуют типы данных, определяемые пользователем. Это перечислимый тип (когда непосредственно, в разделе описания типов, заранее записываются все значения для переменных этого типа) и интервальный (когда задаются границы диапазона значений для данной переменной). Перечислимый тип данных задается непосредственно перечислением всех значений, которые может принимать переменная данного типа. При описании отдельные значения указываются через запятую, а весь список заключается в круглые скобки. Например: Var Season: (winter, spring, summer, autum); Temp: (23,24,25,26); Интервальный тип позволяет задавать две константы, определяющие границы диапазона значений для каждой переменной. Обе константы должны принадлежать одному и тому же стандартному типу (кроме real). Например: Var S:1..30; Сh:’a’..’f’; Структурированные типы данных Составные типы данных определяют упорядоченную совокупность скалярных переменных и характеризуются типом своих компонентов. К структурированным типам данных в Turbo Pascal относят: тип–массив (array); строковый тип (string). 10

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.