Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 491540)
Консорциум Контекстум Информационная технология сбора цифрового контента

Практикум по программированию на языке Паскаль. Массивы, строки, файлы, рекурсия, линейные динамические структуры, бинарные деревья (149,00 руб.)

0   0
Первый авторАбрамян М. Э.
АвторыЮжный федеральный ун-т
ИздательствоРостов н/Д.: Изд-во ЮФУ
Страниц278
ID637247
АннотацияУчебное пособие содержит 770 заданий по программированию и указания по их выполнению в средах Borland Delphi, Free Pascal Lazarus и PascalABC.NET. Приводятся решения типовых задач и необходимый справочный материал.
Кому рекомендованоДля преподавателей программирования, старшеклассников и студентов.
ISBN978-5-9275-0801-3
УДК004.438(076.5)
ББК32.973.26-018.1я73
Абрамян, М.Э. Практикум по программированию на языке Паскаль. Массивы, строки, файлы, рекурсия, линейные динамические структуры, бинарные деревья : [учеб. пособие] / Южный федеральный ун-т, М.Э. Абрамян .— 7-е изд., перераб. и доп. — Ростов н/Д. : Изд-во ЮФУ, 2010 .— 278 с. — ISBN 978-5-9275-0801-3

Предпросмотр (выдержки из произведения)

ISBN 978-5-9275-0801-3 Учебное пособие содержит 770 заданий по программированию и указания по их выполнению в средах Borland Delphi, Free Pascal Lazarus и PascalABC.NET. <...> Указания и примеры ориентированы на современные диалекты Паскаля: язык Delphi Pascal, реализованный в системах Borland Delphi 7.0, Turbo Delphi 2006 и Free Pascal Lazarus 0.9, и язык PascalABC.NET, реализованный в одноименной программной системе (данная система разрабатывается на мехмате ЮФУ под руководством доц. <...> В третьей части пособия содержатся справочные сведения по языкам Delphi Pascal и PascalABC.NET, которые могут оказаться полезными при 4 Предисловие выполнении учебных заданий. <...> Для более эффективной организации практикума по программированию автором настоящего пособия разработан электронный задачник Programming Taskbook, который содержит все задания, приведенные в пособии, и предоставляет учащимся следующие возможности: • отображение на экране текста задания и связанных с ним данных; • демонстрация правильных результатов для каждого задания; • предоставление исходных данных программе учащегося; • проверка правильности операций ввода-вывода; • анализ результатов, полученных программой; • запись в особый файл результатов информации о каждом тестовом испытании программы; • регистрация задания как выполненного после проведения серии успешных тестовых испытаний. <...> Кроме заданий, приведенных в настоящем пособии, задачник Programming Taskbook содержит 330 заданий начального уровня, посвященных скалярным типам данных, управляющим операторам и разработке процедур и функций с числовыми параметрами [3, 10]. <...> Подробное описание процесса выполнения заданий с использованием задачника Programming Taskbook приводится в п. <...> Дополнительную информацию о задачнике Programming Taskbook можно получить на сайте http://ptaskbook.com/. <...> Кроме того, исключена из рассмотрения система Pascal ABC, поддержка которой была прекращена в 2007 г., а к набору рассматриваемых реализаций языка Delphi Pascal добавлена система Free Pascal Lazarus. <...> 17) нужно учитывать дополнительные условия: • данные <...>
Практикум_по_программированию_на_языке_Паскаль_Массивы,_строки,_файлы,_рекурсия,_линейные_динамические_структуры,_бинарные_деревья.pdf
УДК 004.438(076.5) ББК 32.973.26-018.1я73 А 16 Печатается по решению редакционно-издательского совета Южного федерального университета Рецензент: к. ф.-м. н., доцент кафедры алгебры и дискретной математики факультета математики, механики и компьютерных наук Южного федерального университета С. С. Михалкович Учебное пособие подготовлено и издано в рамках национального проекта «Образование» по «Программе развития федерального государственного образовательного учреждения высшего профессионального образования «Южный федеральный университет» на 2007-2010 гг.» Абрамян М. Э. А16 Практикум по программированию на языке Паскаль: Массивы, строки, файлы, рекурсия, линейные динамические структуры, бинарные деревья. – 7-е изд., перераб. и доп. – Ростов н/Д.: Изд-во ЮФУ, 2010. – 276 с.: ил. ISBN 978-5-9275-0801-3 Учебное пособие содержит 770 заданий по программированию и указания по их выполнению в средах Borland Delphi, Free Pascal Lazarus и PascalABC.NET. Приводятся решения типовых задач и необходимый справочный материал. Для преподавателей программирования, старшеклассников и студентов. ISBN 978-5-9275-0801-3 УДК 004.438(076.5) ББК 32.973.26-018.1я73 © М. Э. Абрамян, 2010 © Оформление. Макет. Издательство Южного федерального университета, 2010
Стр.2
273 Содержание Предисловие...................................................................................................................3 Часть I. Учебные задания................................................................................5 1. Предварительные замечания ....................................................................................5 2. Минимумы и максимумы: группа Minmax.............................................................6 3. Одномерные массивы: группа Array .......................................................................9 3.1. Формирование массива и вывод его элементов ..............................................9 3.2. Анализ элементов массива...............................................................................10 3.3. Работа с несколькими массивами ...................................................................13 3.4. Преобразование массива ..................................................................................14 3.4.1. Изменение элементов массива ..............................................................14 3.4.2. Удаление и вставка элементов ..............................................................16 3.4.3. Сортировка массива ...............................................................................17 3.5. Серии целых чисел ...........................................................................................18 3.6. Множества точек на плоскости .......................................................................19 4. Двумерные массивы (матрицы): группа Matrix....................................................21 4.1. Формирование матрицы и вывод ее элементов.............................................21 4.2. Анализ элементов матрицы .............................................................................23 4.3. Преобразование матрицы.................................................................................25 4.4. Диагонали квадратной матрицы......................................................................27 5. Символы и строки: группа String...........................................................................29 5.1. Символы и их коды. Формирование строк ....................................................29 5.2. Посимвольный анализ и преобразование строк. Строки и числа................29 5.3. Обработка строк с помощью стандартных функций. Поиск и замена........30 5.4. Анализ и преобразование слов в строке.........................................................31 5.5. Дополнительные задания на обработку строк...............................................33 6. Типизированные файлы: группа File.....................................................................34 6.1. Основные операции с типизированными файлами.......................................35 6.1.1. Создание файла, ввод и вывод его элементов .....................................35 6.1.2. Преобразование файла ...........................................................................37 6.1.3. Обработка нетипизированных файлов .................................................38 6.2. Работа с несколькими числовыми файлами. Файлы-архивы.......................38 6.3. Cимвольные и строковые файлы.....................................................................39 6.4. Использование файлов для работы с матрицами ..........................................41 7. Текстовые файлы: группа Text...............................................................................43 7.1. Основные операции с текстовыми файлами..................................................44 7.2. Анализ и форматирование текста ...................................................................45 7.3. Текстовые файлы с числовой информацией..................................................47 7.4. Дополнительные задания на обработку текстовых файлов .........................49 8. Составные типы данных в процедурах и функциях: группа Param ...................50 8.1. Одномерные и двумерные массивы................................................................50 8.2. Строки ................................................................................................................55
Стр.273
274 Содержание 8.3. Файлы ................................................................................................................57 8.4. Записи ................................................................................................................59 9. Рекурсия: группа Recur...........................................................................................61 9.1. Простейшие рекурсивные алгоритмы ............................................................61 9.2. Разбор выражений ............................................................................................63 9.3. Перебор с возвратом.........................................................................................65 10. Динамические структуры данных: группа Dynamic..........................................66 10.1. Стек ..................................................................................................................66 10.2. Очередь............................................................................................................68 10.3. Двусвязный список.........................................................................................71 10.4. Список с барьерным элементом....................................................................78 11. Бинарные деревья: группа Tree............................................................................81 11.1. Анализ бинарного дерева...............................................................................82 11.2. Формирование бинарного дерева .................................................................84 11.3. Преобразование бинарного дерева ...............................................................86 11.4. Бинарные деревья с обратной связью ..........................................................87 11.5. Бинарные деревья поиска ..............................................................................88 11.6. Бинарные деревья разбора выражений.........................................................91 11.7. Деревья общего вида......................................................................................93 Часть II. Указания и решения........................................................................ 96 12. Указания.................................................................................................................96 12.1. Минимумы и максимумы ..............................................................................96 12.2. Одномерные массивы.....................................................................................97 12.3. Двумерные массивы (матрицы) ..................................................................104 12.4. Символы и строки.........................................................................................107 12.5. Типизированные файлы...............................................................................111 12.6. Текстовые файлы..........................................................................................116 12.7. Составные типы данных в процедурах и функциях .................................121 12.8. Рекурсия.........................................................................................................125 12.9. Динамические структуры данных...............................................................128 12.10. Бинарные деревья .......................................................................................129 13. Решения................................................................................................................137 13.1. Минимумы и максимумы: Minmax1...........................................................137 13.2. Одномерные массивы...................................................................................144 13.2.1. Массивы в Паскале: общее описание .............................................144 13.2.2. Ввод и вывод элементов массива: Array7 ......................................147 13.2.3. Анализ элементов массива: Array47 ...............................................147 13.2.4. Преобразование массива: Array79 ..................................................148 13.2.5. Серии целых чисел: Array116..........................................................149 13.3. Двумерные массивы (матрицы) ..................................................................150 13.3.1. Ввод и вывод элементов матрицы: Matrix7 ...................................150 13.3.2. Диагонали квадратной матрицы: Matrix82.....................................153 13.4. Символы и строки.........................................................................................154 13.4.1. Символы и строки в Паскале: общее описание .............................154 13.4.2. Формирование строк: String10 ........................................................157 13.4.3. Строки и числа: String19 ..................................................................159 13.4.4. Анализ слов в строке: String41 ........................................................161
Стр.274
275 13.5. Типизированные файлы ...............................................................................163 13.5.1. Создание файла, ввод и вывод его элементов: File48 ...................163 13.5.2. Преобразование файла: File25 .........................................................169 13.5.3. Работа с нетипизированными файлами: File43..............................172 13.6. Текстовые файлы ..........................................................................................175 13.6.1. Создание текстового файла: Text1 ..................................................175 13.6.2. Анализ текстового файла: Text4......................................................178 13.6.3. Преобразование текстового файла: Text21.....................................179 13.7. Составные типы данных в процедурах и функциях..................................182 13.7.1. Передача массивов в качестве параметров, работа с открытыми и динамическими массивами: Param1.........182 13.7.2. Работа с записями: Param59 .............................................................187 13.8. Рекурсия.........................................................................................................189 13.8.1. Простейшие рекурсивные алгоритмы: Recur1...............................189 13.8.2. Разбор выражений: Recur14, Recur15, Recur16, Recur18 ..............191 13.8.3. Перебор с возвратом: Recur25 .........................................................200 13.9. Динамические структуры данных...............................................................205 13.9.1. Анализ существующей динамической структуры: Dynamic2......205 13.9.2. Добавление элемента к динамической структуре: Dynamic3.......210 13.9.3. Удаление элемента из динамической структуры: Dynamic5........211 13.9.4. Двусвязные динамические структуры: Dynamic30 .......................212 13.9.5. Циклические динамические структуры: Dynamic55 .....................214 13.9.6. Перегруппировка элементов динамической структуры: Dynamic8, Dynamic10, Dynamic49...............................215 13.9.7. Создание процедур и функций для работы с динамической структурой: Dynamic11 ........................................217 13.10. Бинарные деревья .......................................................................................219 13.10.1. Анализ бинарного дерева: Tree2, Tree12 ......................................219 13.10.2. Формирование бинарного дерева: Tree32 ....................................223 13.10.3. Преобразование бинарного дерева: Tree40 ..................................224 13.10.4. Бинарные деревья с обратной связью: Tree49..............................226 13.10.5. Бинарные деревья поиска, сортировка деревом: Tree65.............228 13.10.6. Бинарные деревья разбора выражений: Tree74, Tree75 ..............231 13.10.7. Деревья общего вида: Tree86 .........................................................235 Часть III. Справочные сведения .................................................................239 14. Программирование на языке Паскаль: строки, файлы, указатели .................239 14.1. Работа с символами и строками ..................................................................239 14.1.1. Основные процедуры и функции ....................................................239 14.1.2. Дополнительные функции Delphi Pascal для обработки строк ....240 14.1.3. Дополнительные функции PascalABC.NET для обработки строк..........................................................................243 14.2. Работа с файлами ..........................................................................................245 14.2.1. Файловые типы и системные файловые переменные ...................245 14.2.2. Обработка ошибок ввода-вывода ....................................................246 14.2.3. Процедуры и функции для работы с файлами любого типа ........247 14.2.4. Процедуры и функции для работы с типизированными и нетипизированными файлами ......................................................249
Стр.275
276 Содержание 14.2.5. Процедуры и функции для работы с текстовыми файлами .........249 14.2.6. Ввод-вывод для типизированных файлов ......................................250 14.2.7. Ввод-вывод для нетипизированных файлов ..................................251 14.2.8. Ввод-вывод для текстовых файлов .................................................252 14.2.9. Дополнительные функции Delphi Pascal и PascalABC.NET для работы с файлами и каталогами ...............................................254 14.2.10. Имена-синонимы Delphi Pascal и PascalABC.NET для работы с файлами.......................................................................256 14.3. Работа с указателями....................................................................................256 14.3.1. Типы переменных-указателей .........................................................256 14.3.2. Нулевой указатель, операции над указателями .............................256 14.3.3. Выделение и освобождение динамической памяти ......................257 15. Кодовые таблицы символов ...............................................................................257 16. Форматирование текста программ ....................................................................258 17. Задачник Programming Taskbook .......................................................................261 17.1. Назначение и состав задачника Programming Taskbook...........................261 17.2. Вспомогательные типы и процедуры, используемые при выполнении учебных заданий .............................................................263 17.3. Отладочные средства задачника .................................................................265 17.3.1. Раздел отладки и его элементы .......................................................266 17.3.2. Процедуры Show и ShowLine ..........................................................267 17.3.3. Вспомогательные процедуры, связанные с выводом отладочной информации ...............................................268 17.4. Особенности реализации задачника для системы PascalABC.NET ........269 Литература .................................................................................................................271 Подписано в печать 24.08.2010 г. Формат 60х84 1/16. Усл. печ. л. 16,04. Уч.-изд. лист 22,22. Тираж 400 экз. Заказ № 1240. Типография Южного федерального университета 344090, г. Ростов-на-Дону, пр. Стачки, 200/1, тел (863) 247-80-51.
Стр.276