Turbo Pascal

5-е издание
Эллиот Б. Коффман

Turbo Pascal Web Update, 5th Edition
Robin Koffman
книга Turbo Pascal, 5-е издание

Тираж данной книги закончился.
Оглавление
Введение
Файлы к книге

Данная книга задумана как начальное пособие для решения задач программирования и разработке программ с применением Turbo Pascal версии 7.0. При этом не требуется предварительных знаний по программированию или компьютерам; для понимания большинства материала достаточно владеть курсом алгебры в объеме средней школы. Среди прочего, книга познакомит читателя с интегрированной средой Turbo Pascal, компьютерной графикой, процедурами и функциями, объектно-ориентированным программированием и многим другим.

896 стр., с ил.; ISBN 5-8459-0256-8, 0-2013-5086-6; формат 70x100/16; твердый переплет2005, 1 кв.; Вильямс.



Понравилась книга? Порекомендуйте её друзьям и коллегам:







Книги, рекомендуемые вместе с этой книгой:

Раздел каталога:



Оглавление книги "Turbo Pascal"

Введение 17
Глава первая. Компьютеры и программирование: общий обзор 23
Глава вторая. Pascal и решение задач 49
Глава третья. Функции, процедуры и графика 109
Глава четвертая. Структуры выбора: операторы if и case 159
Глава пятая. Операторы while, for и repeat 215
Глава шестая. Структурное программирование 273
Глава седьмая. Простые типы данных 337
Глава восьмая. Текстовые файлы 381
Глава девятая. Разработка программного обеспечения и модули 421
Глава десятая. Массивы 467
Глава одиннадцатая. Многомерные массивы 527
Глава двенадцатая. Записи 553
Глава тринадцатая. Абстракция данных и объектно-ориентированное программирование 591
Глава четырнадцатая. Рекурсия 637
Глава пятнадцатая. Множества и строки 675
Глава шестнадцатая. Внешние информационные структуры: файлы 713
Глава семнадцатая. Указатели и связанные списки 739
Глава восемнадцатая. Динамические информационные структуры 773
Приложение А. Интегрированная среда Turbo Pascal 811
Приложение Б. Зарезервированные слова, стандартные идентификаторы, операторы, модули, функции, процедуры и директивы компилятора 824
Приложение В. Синтаксические диаграммы Turbo Pascal 834
Приложение Г. Набор символов ASCII 847
Приложение Д. Краткий справочник по конструкциям Turbo Pascal 850
Ответы для нечетных упражнений из разделов “проверь себя” 855
Предметный указатель 889


Введение

Данная книга задумана как начальное пособие при решении задач программирования и разработке программ с применением Turbo Pascal (версии 7.0). При этом не требуется предварительных знаний по программированию или компьютерам и для большинства материала достаточной математической основой является курс алгебры в объеме средней школы. Тем не менее, для усвоения некоторых разделов необходимы минимальные познания в области дискретной математики.

Решение задач

Взаимосвязь между развитыми навыками решения разного рода задач и способностью эффективно разрабатывать программное обеспечение показана в главе 1. Данная глава также знакомит читателя с интегрированной средой Turbo Pascal. Практическое применение метода проектирования программных средств рассматривается в главе 2 (раздел "ИССЛЕДОВАНИЕ ЗАДАЧИ"); указанный метод затем применяется во всех подобных разделах по всей книге.

В главах 3 и 4 в ходе обсуждения нисходящего проектирования, метода "разделяй и властвуй" (т.е. деления задач на более мелкие подзадачи), решения по аналогии и обобщения решения, как и в предыдущем издании по-прежнему большое внимание уделяется решению задач. Очень важный раздел главы 3 демонстрирует, как Pascal-программа может быть создана на основе документации, явившейся результатом систематического применения метода проектирования программных средств.

Графика

Данное издание содержит введение в компьютерную графику. Некоторые графические процедуры Turbo Pascal описаны в главе 3, анимация - в главе 6 и интерфейсы пользователя - в главе 9.

Техника создания программного обеспечения

В этой книге рассматриваются многие аспекты процесса создания программного обеспечения. Вопросы, связанные со стилем программирования, освещаются с использованием специальных описаний синтаксиса. Концепция программы как последовательности управляющих структур освещается в начале главы 4. Кроме того, несколько глав содержат разделы, посвященные трассировке, отладке и тестированию программ.

Глава 9 представляет собой полное руководство по технике создания программного обеспечения. Из данной главы читатель узнает о таких понятиях, как жизненный цикл программного обеспечения (software life cycle) и создание прототипов (prototyping), а также узнает о том, как организовать совместную работу коллектива разработчиков-программистов над решением общей задачи. Детальное рассмотрение всех фаз жизненного цикла программного обеспечения предполагает обсуждение неформальных методов тестирования программ (тестирование "прозрачного ящика" и "черного ящика", комплексное тестирование, сквозной структурированный контроль) и формальных методов верификации программ, а также обсуждение утверждений и инвариантов цикла. В этой главе также состоится предварительное знакомство читателя с абстракцией данных и процедурной абстракцией. Здесь же содержится информация о модулях, в частности, о модуле Crt, средства которого позволяют создавать оконные интерфейсы. Здесь же показано, как создавать собственные модули с целью реализации библиотек подпрограмм и абстрактных типов данных. Завершается глава 9 обсуждением вопросов, связанных с профессиональной этикой.

Процедурная абстракция

Хотя не существует единого мнения по поводу того, когда приступать к изучению процедур и их параметров, большинство преподавателей сходятся на следующем. Знакомство с процедурами изучающих программирование должно происходить как можно раньше, процедуры никогда не должны манипулировать глобальными переменными (во избежание побочных эффектов). Кроме того, все специалисты признают вопрос о параметрах процедур достаточно сложным. Подход, принятый в данной книге, заключается в том, чтобы сначала (в главе 3) обсудить важность модульности программ и многократного использования процедур и функций. Данная глава обоснует использование подпрограмм в качестве "кирпичиков" при создании программ, демонстрируя некоторые примеры применения процедур без параметров (в частности, для отображения обширных инструкций пользователю и создания диаграмм). Затем в разделе 3.5 обсуждается важность параметров и ограниченность подпрограмм без параметров; тем самым обоснуется необходимость последующего изучения этой темы (глава 6). Раздел 3.6 знакомит читателя с графическими процедурами и демонстрирует их использование.

Глава 6, завершающая изучение процедур и функций, посвящена всем аспектом использования параметров. Глава начинается с обсуждения процедур, у которых есть только параметры-значения; затем здесь идет речь о процедурах, имеющих как параметры-значения, так и параметры-переменные; наконец, читатель познакомится с такой разновидностью подпрограмм, как функции. Необязательный раздел в конце главы посвящен рекурсивным функциям.

Некоторые преподаватели полагают, что процедуры с параметрами и процедуры без параметров следует рассматривать вместе. Читатели, придерживающиеся этого мнения, легко смогут изменить порядок изучения тем. Если вы не имеете ничего против того, чтобы отложить знакомство с процедурами до главы 6 (где, как уже шла речь выше, обсуждаются процедуры с параметрами и процедуры без параметров), пропустите при изучении главы 3 разделы 3.4 и 3.5. И наоборот, если вы предпочитаете узнать о процедурах как можно раньше, обратитесь к разделу 6.1 (посвященному параметрам) сразу после знакомства с главой 3 и отложите разделы 6.2 и 6.3 (в которых рассматриваются параметры-переменные и синтаксис списков параметров) до того, как завершите изучение первых трех разделов главы 4 (посвященных управляющим структурам, Boolean-выражениям и оператору if).

Абстракция данных и объектно-ориентированное программирование

В главе 9, посвященной технике создания программного обеспечения, вы встретитесь с первым примером абстрактного типа данных (АТД). Здесь же вы познакомитесь с перечислимым типом данных и узнаете, как объединить в едином модуле Turbo Pascal тип данных и процедуры, предназначенные для обработки данных этого типа. Абстракция данных и АТД широко используются при освещении более сложных тем, рассматриваемых в этой книге, начиная с главы 13.

Глава 13, посвященная объектам Turbo Pascal и объектно-ориентированному программированию (ООП), помимо прочего, познакомит читателя с таким свойством объектов, как наследование. Объекты и ООП также рассматриваются в главе 17 и главе 18.

Освещение теоретических концепций

Данная книга, помимо прочего, рассматривает также некоторые теоретические вопросы. Так, необязательный раздел из главы 7 познакомит читателя с числовыми вычислениями и итеративной аппроксимацией. Глава 9 обсуждает вопросы верификации программ, фокусируя при этом основное внимание на утверждениях и инвариантах циклов. А в главе 10 читатель познакомится с поиском в массивах и их сортировкой.

Особенности структуры книги

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

Упражнения в конце разделов:

Большинство разделов завершаются несколькими упражнениями, которые предлагают анализировать фрагменты программ, либо решать простейшие задачи программирования. Ответы для таких упражнений с нечетными номерами можно найти в конце данной книги.

Упражнения в конце глав:

Каждая глава завершается набором контрольных упражнений, предназначенных для проверки знаний, усвоенных в данной главе, а также ответами для этих упражнений. Далее следуют обзорные вопросы, посвященные рассмотренным в главе темам.

Проекты для программирования в конце глав:

Большинство таких проектов связано с решением той или иной задачи программирования.

Примеры и исследования задач:

Одним из несомненных достоинств данной книги являются большое количество примеров программирования. По мере возможности эти примеры представляют собой полные программы или процедуры, а не просто фрагменты. Кроме того, каждая глава содержит один или несколько разделов "ИССЛЕДОВАНИЕ ЗАДАЧИ", в которых решения задач программирования осуществляются с использованием метода проектирования программных средств.

Описания синтаксиса:

Здесь подается краткая информация о синтаксисе и семантике каждого нового элемента Pascal. Здесь же содержится пример использования этого элемента. Кроме того, в книге вы найдете синтаксические диаграммы: несколько таких диаграмм подано в различных главах, а полный их набор находится в приложении В.

Описания стиля программирования:

Здесь даются объяснения, что такое хороший стиль программирования.

Обсуждение типичных ошибок и обзоры глав:

Каждая глава завершается разделом, в котором рассматриваются ошибки, наиболее часто допускаемые программистами. Обзоры глав включают таблицу с новыми Pascal-конструкциями.

Дополнительные темы

Материал, содержащийся в главах 1-12, обычно рассматривается в первом семестре курса программирования. Данная книга содержит шесть дополнительных глав, включающих материал по темам, обычно изучаемых во втором семестре либо в первом семестре ускоренного курса. Этот материал также может быть использован в качестве справочного теми, кто продолжает изучение программирования. К дополнительным темам относятся следующие.

  • Рекурсия (глава 14)
  • Множества и строки (глава 15)
  • Внешние структуры данных: файлы (глава 16)
  • Указатели и связанные списки (глава 17)
  • Динамические структуры данных (глава 18)
  • Приложения и дополнительные материалы

Приложения:

В данной книге имеются самостоятельные приложения, содержащие материалы по среде Turbo Pascal, элементам языка, директивам компилятора, а также синтаксические диаграммы и коды ASCII.

Файлы с программами:

Все процедуры и функции, используемые в разделах "ИССЛЕДОВАНИЕ ЗАДАЧИ", объединены в единые файлы программ. Также имеются файлы, содержащие решения для избранных проектов. Часто эти решения представляют собой отправную точку для последующих проектов. Эти файлы вы можете загрузить на свой компьютер с Web-узла издательского дома Williams (адрес http://www.williamspublishing.com) , а затем запускать их в среде Turbo Pascal. Места в книге, где речь идет о таких проектах, отмечены пиктограммой, подобной той, что изображена слева от данного абзаца.

Благодарности

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

Марта Динуидди (Martha Dinwiddie) - Университет Техаса - Даллас

Майкл Доран (Michael Doran) - Университет Южной Алабамы

Дебора Данн (Deborah Dunn) - Университет А & М Техаса

Мэри Лу Хайнз (Mary Lou Hines) - Университет Миссури - Канзас-Сити

Ван Хауберт (Van Howbert) - Университет штата Колорадо

Айван Лисс (Ivan Liss) - Редфордский университет

Чарльз Оуэн (Charles Owen) - Дартмусский колледж

Уэйн Смит (Wayne Smith) - Университет штата Миссури

Тим Терман (Tim Thurman) - Университет Канзаса

Помимо просмотра рукописи, Чарльз Оуэн из Дартмусского колледжа предложил множество упражнений и проектов, которых не было в предыдущих изданиях. Также следует отметить вклад Джеймса С. Плезанта (James C. Pleasant) из Университета штата Теннеси в раздел, посвященный верификации программ.

Информация, собранная отделом исследования рынка компании Addison-Wesley, помогла сделать содержание данной книги наиболее оптимальным. Я благодарен многим преподавателям из различных колледжей и университетов, внесшим вклад в создание данной книги.

Кроме того, хочется поблагодарить за ценный вклад трех студентов из университета города Темпл (Tample). Кристиан Дж. Полицци (Christian J. Polizzi) протестировал все программы и внес в них необходимые коррективы. Он же проверял корректуру и индексировал текст, а также подготовил решения для упражнений. Донна Чрапкэла (Donna Chrupcala) готовила решения для упражнений и внесла в упражнения множество усовершенствований. А Билл Джоунз (Bill Jones) предложил несколько советов, касающихся упражнений с графикой. Персонал компании Addison-Wesley работал очень напряженно, чтобы соблюсти чрезвычайно жесткие сроки. Мои редакторы Линн Доран Коут (Lynne Doran Cote) и Сузан Хартман (Susan Hartman) принимали активное участие на всех этапах этого проекта. Им умело помогала Джули Данн (Julie Dunn), которая великолепно координировала работу автора с процессом редактирования. Технические редакторы Элизабет Заяц (Elizabeth Zayatz) и Марджори Сингер-Андерсон (Marjorie Singer-Anderson) предложили ценные советы, позволившие улучшить внешний вид страниц этой книги. Эми Уиллкатт (Amy Willcutt) контролировала производство книги. Я благодарен им всем за отличную работу.


Copyright © 1992-2019 Издательская группа "Диалектика-Вильямс"

Rambler  Top100