NexxDigital - компьютеры и операционные системы

Среда программирования PascalABC используется в качестве начального обучения программированию школьников на языке программирования Паскаль. Среда содержит мощную справочную систему и встроенный задачник с автопроверяемыми заданиями. Это позволит вам быстро научиться писать программы на паскале.

В бесплатной мини-версии задачника доступно 270 заданий по всем основным разделам. Этого вполне достаточно для самостоятельного освоения начального уровня программирования. Скачать паскаль бесплатно версию 3.0 можно здесь . В настоящее время данная версия больше не поддерживается и разработчики работают над PascalABC.Net . Итак, начинаем pascal abc обучение.

Внешний вид интерфейса программы PascalABC

Окно среды программирования выглядит стандартно. В нем присутствует строка меню (1), ниже располагается панель инструментов быстрого доступа (2). Далее расположена рабочая зона редактора кода.


Внешний вид интерфейса программы

Вверху отображены ярлыки открытых файлов с текстами программ (3). Одновременная работа с несколькими текстами значительно упрощает создание программ. Можно копировать и переносить участки кода из одного файла в другой (4).

В режиме выполнения программы можно увидеть зону ввода данных и вывода результатов (5).

Работа с PascalABC

После набора текста программы необходимо выполнить ее сохранение и задать имя. Для этого можно воспользоваться командой Файл-Сохранить как или соответствующей кнопкой на панели инструментов.

Давайте имя отличное от предлагаемого по умолчанию. Это облегчит вам в дальнейшем поиск нужного кода.

Запуск

Теперь можно запустить программу для проверки ее работы. Команда запуска Программа -Выполнить или кнопкой в виде зеленого треугольника на панели инструментов. Перед запуском выполняется компиляция кода. Если в коде есть ошибки, то появится красная строка с описанием ошибки.


Ошибки в программе

Курсор будет указывать место вероятной ошибки, но это не всегда совпадает с её описанием. Вот, например, на скриншоте выше курсор указывает на переменную Y, но ошибка содержится в строке выше. Там пропущен символ «точка с запятой», который обязательно должен быть по завершению каждой командной строки. После исправления ошибки, снова запускаем выполнение программы.

Остановка

Остановка программы происходит по ее завершению. Но возможны случаи, когда программу необходимо остановить принудительно. Для этого есть кнопка «Стоп» на панели инструментов или команда Программа — Завершить.

Настройка текстового редактора abc паскаль

По умолчанию в редакторе кода задан минимальный размер шрифта. Если вы испытываете дискомфорт при наборе текста, то зайдите в меню Сервис — Настройки редактора . Установите желаемый размер шрифта.


Настройка редактора Pascal ABC

Работа с электронным задачником

Научиться писать программы pascal невозможно без практики. Система автоматического тестирования работы программы для паскаля поможет вам освоить программирование на языке pascal.
Зайдите в меню Сервис — Создать шаблон программы. У вас откроется следующее окно (смотрите ниже)

Здесь нужно написать название группы заданий. Смотрим на список и вписываем нужную группу в точности как она записана в списке окна. После указания имени группы заданий, подсказка поменяется.

Теперь будет указано количество доступных заданий в этой группе или будут перечислены номера конкретных заданий. Вы добавляете номер к названию группы без пробела. Нажимаем кнопку . Откроется вкладка с выбранным заданием. В новом файле будет присутствовать автоматически сгенерированный код. Его удалять нельзя.

Теперь для просмотра текста задания нажмем на кнопку запуска программы.

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

Запускаем на выполнение. Если нет ошибок, то получим окно.

Нужно провести несколько повторных запусков программы, чтобы пройти все тесты. И только после прохождения всех тестов задание получит статус «Задание выполнено!» Теперь можно переходить к выполнению следующего задания.

Профессиональная среда разработки для создания программ и приложений любого уровня сложности. Сочетает в себе классическую простоту Паскаля и все возможности современной среды разработки.NET, которую используют профессиональные разработчики по всему миру. Кроме того, язык программирования Паскаль изучают на школьном курсе информатики, давая учащимся базовые знания об операторах и переменных. Таким образом, обучение Паскаль абс даётся новичкам лучше, чем освоение других языков программирования.

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

Уроки Pascal ABC

Представленные в видеокурсе уроки Паскаль АБС основаны на разработке прикладных программ и дают практические знания. Все программы, которые вы напишите в процессе прохождения видеокурса, полностью рабочие и их можно использовать в повседневной жизни – «воды» и пустой теории в курсе нет.

Осваиваем интерфейс редактора и пишем свои первые строчки кода.


Изучаем логику работы с числами и конструируем таймер.


Изучаем, как язык программирования компилирует исходный код.



Используем Паскаль для нахождения решения задачи про школьницу Анну.


Программируем настоящий виртуальный музыкальный синтезатор.


Осваиваем сложные математические функции и создаём полноценный инженерный калькулятор.



Создаём «правильную» телефонную книгу на основе базы данных.


Урок 1 - Первая программа
Урок 2 - Простые числа
Урок 3 - Компиляторы (Часть 1)
Урок 3 - Компиляторы (Часть 2)
Урок 4 - Решение школьной задачи
Урок 5 - Создание пианино
Урок 6 - Продвинутый калькулятор (Часть 1)
Урок 6 - Продвинутый калькулятор (Часть 2)
Урок 7 - Удобная телефонная книга (Часть 1)
Урок 7 - Удобная телефонная книга (Часть 2)
Урок 7 - Удобная телефонная книга (Часть 3)
Урок 7 - Удобная телефонная книга (Часть 4)
Урок 8 - Работа с графикой. Система частиц (Часть 1)
Урок 8 - Работа с графикой. Система частиц (Часть 2)
Урок 8 - Работа с графикой. Система частиц (Часть 3)
Урок 8 - Работа с графикой. Система частиц (Часть 4)

Пожалуй, нет ни одного современного человека, кто бы не знал язык Паскаль (основы программирования). И это не удивительно! Еще в учебнике по информатике для школьников расписаны самые основные понятия этой уникальной программы.

Сейчас, в век информационных технологий, каждый может провести для себя обучение по самоучителю онлайн (пройдя курсы «Изучение языков программирования с нуля»; «Паскаль для чайников» и другие).

История изучаемого языка не так проста: Паскаль претерпел множество изменений, прежде чем школьники увидели его в том виде, в каком его преподают на уроках. Это был самый первый простой язык (ord pascal) для программирования, помогающий решить множество практических задач прошлого столетия (1970 год). Он был разработан группой ученых.

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

Ниже разберемся: что такое Паскаль, каковы его основные инструменты. Рассмотрим операции и функции программы, ее специфические особенности. На примерах поймем, как она работает. Научимся писать и работать на языке Паскаль.

Что такое язык программирования Паскаль

Это базовая высокоуровневая программа. Она занимает первое место в учебных планах многих школ и вузов Российской Федерации.

Особенности системы PascalABC.NET

Всё познается в сравнении, поэтому преимущества этой программы рассмотрим в соотношении с другим языком BASIC.

Итак, что характерно для языка Паскаль и что не подходит для Бейсика:

  1. Во-первых, наличие компилятора, позволяющего скачивать Паскаль на любые платформы.
  2. Во-вторых, все версии этой программы совместимы между собой.
  3. В-третьих, структурированные типы данных помогают программисту точно составить необходимый алгоритм решения практической задачи, при этом защищая его.
  4. В-четвертых, наглядность и логичность интерфейса программы: все команды просты и понятны.
  5. В-пятых, переход на другой, более высокий по уровню язык программирования, достаточно прост.

Примеры программ на PascalABC.NET

Сумма вводимых целых чисел

Произведение целых чисел

Сколько нечетных среди n введенных

Защита от неверного ввода

Вывод 10 первых степеней двойки

Найти сумму цифр целого положительного числа m

Разложение числа на простые множители

Паскаль для начинающих – основные понятия

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

Рабочая область

Как выглядит рабочее пространство?

Теперь рассмотрим основу: алфавит и структуру.

Алфавит Паскаль

Что нужно знать? Алфавит — это набор символов, необходимый при составлении программы.

Что к ним относится:

  1. Латинские прописные, строчные буквы (А, В, С….а,b,с).
  2. Арифметические символы (0, 1, 2…).
  3. Специальные знаки (препинания, скобки, кавычки, арифметические знаки и т. д.).
  4. Неделимые символы (:=, ˃=…).
  5. Служебные слова:
  • and – и;
  • array – массив;
  • begin – начало;
  • do – выполнить;
  • else – иначе;
  • for – для;
  • if – если;
  • of – из;
  • or – или;
  • procedure – процедура;
  • program – программа;
  • repeat – повторять;
  • then – то;
  • to – до;
  • until – до (= пока);
  • var – переменная;
  • while – пока.

Cледует учесть: константы, операции не должны носить те же названия, что и служебные слова (длина – любая).

Структура программы

Итак, что же входит в «иерархию» данной программы?

По своей структуре этот язык делится на 3 раздела:

  • название;
  • данные;
  • действия.

Обратите внимание: переменные нужно перечислять через запятую, а после через «:» указать их тип. Завершить написанное «;».

Действия начинаются с «begin» и заканчиваются «end» с точкой.

Структуру можно представить так:

Кстати, операторы между собой разделяются точкой с запятой.

Операторы write, writeln, read, readln

Выясним, как происходит вывод и ввод информации.

Вывод

Как таковых операторов вывода в этом языке нет, но есть специальные слова, которые помогают запустить необходимые функции. Это write, writeln .

В чем их главное отличие? При вводе или выводе последующей информации после них: в первом случае последующая информация будет выводиться на ту же строку, где и написан оператор. А вот во втором – на следующую.

Ввод

Для ввода существуют тоже свои слова: read, readln (= readkey).

Они отличаются друг от друга точно так же, как и предыдущие операторы (при выводе).

Целый тип данных

Выделяют 3 основных вида:

  1. Integer.
  2. Byte.
  3. Longint.

С ними также проводят простые действия:

  • сложение – «+»;
  • вычитание – «-»;
  • умножение – «*»;
  • деление – «div».

Кроме того, разрешено проводить отношения и сравнения (больше или равно — ˃ =).

Вещественные типы данных

К таким переменным относятся дробные числа (например, число пи). Здесь они называются real.

Что нужно помнить? Чтобы ввести формулу дробного числа, надо вместо запятой использовать точку. Для записи степеней (х * 10 у) 10 заменяется Е и число имеет запись:

С ними можно выполнять как самые простые арифметические действия, так и более сложные:

  • квадратный корень – sqrt;
  • абсолютная величина – abs;
  • квадратичная функция – sqr;
  • синус – sin;
  • косинус – cos;
  • арктангенс – arctan;
  • натуральный логарифм – ln;
  • экспонента – exp.

Обработка данных

Помимо перечисленных выше функций (в предыдущих 2 пунктах), есть и другие:

  • целая часть числа – int;
  • дробная часть числа – frac;
  • получение целой части числа – trunc;
  • округление до целого – round;
  • преобразование порядкового типа – ord;
  • преобразование кода в символьный тип – chr;
  • определение предыдущего значения величины – pred;
  • определение последующего значения величины – succ.

Математические операции

Математические функции и операции были рассмотрены при разборе целых и вещественных данных.

Остановимся на типах констант и переменных. Какие они бывают?

Простые включают в себя подтипы:

  • целые – integer;
  • логические – boolean;
  • символьные – char;
  • перечисляемые;
  • интервальные;
  • вещественные.

Строковые записываются командой string. Ссылочные представлены соответствующей формой.

Структурированные делят на:

  • массивы – array;
  • записи – record;
  • множества – set;
  • файл – file.

Для каждого типа характерны свои наборы операций.

Условия

Если есть альтернативные команды и функции, то с помощью операторов if, then, else можно записать необходимые команды для решения практической задачи.

Схема представлена на рисунке ниже.

Логические операции

Операции основаны на истине факта или его лжи.

Выделяют 3 вида таких функций:

  1. Odd – если нечетное число, то истина (наоборот – ложь).
  2. Eoln – истина на конце строки (в другом месте – ложь).
  3. Eof – истина в конце файла (в другом месте – ложь).

Функции управления программой

Какие еще существуют процедуры:

  • Inc – увеличение числа;
  • Clrscr – очистка предыдущих результатов работы программы;
  • Uses crt – запуск clscr;
  • Length – возвращение длины строки;
  • Val – преобразование строки в число;
  • Pos – отыскать в строке первое преобразование;
  • Assign – связывание переменной с файлом;
  • Upcase — перевод строчных букв в заглавные.

Заключение

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

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

Что такое язык программирования? Любая задача, которую решает компьютер, записывается в виде последовательности команд. Такая последовательность называется программой. Команды, конечно, должны быть представлены на языке, понятном компьютеру. Один из таких языков - язык программирования Паскаль. Он разработан швейцарским профессором Нико-лаусом Виртом специально для обучения студентов программированию. К особенностям языка относится также и его структурность. То есть программа легко разбивается на более простые, непересекающиеся блоки, те, в свою очередь, на еще более простые блоки. Это также облегчает программирование. В 1979 году язык был утвержден в качестве стандартного. Вирт назвал его в честь французского ученого Блеза Паскаля, изобретателя счетной машины. Язык Паскаль прост, логичен и эффективен. Он получил распространение во всем мире. Наши беседы построены на конкретных примерах программ. Длительных теоретических пояснений нет, поэтому крайне необходимо внимательно читать комментарии в текстах программ!
Итак, начинаем первую беседу сразу с первой программы на Паскале;

Содержание
Вступление 7
Благодарности 7
От издательства 8
ТЕМА 1. Как написать простую программу на Паскале 9
Урок 1.1. Выводим сообщение на экран дисплея 10
Урок 1.2. Как заложить эту программу в компьютер? 11
Этапы создания компьютерной программы 12
1. Запуск среды Паскаль 14
2. Работа в окне редактирования Edit 16
3. Сохранение программы в файле на диске 19
4. Запуск компилятора 20
5. Выполнение программы 21
6. Просмотр результатов работы программы 21
7. Выход из среды Паскаль 22
Урок 1.3. Оформление текста на экране 22
Выводы 28
Контрольные вопросы 28
ТЕМА 2. Как включить в работу числовые данные 30
Урок 2.1. Начнем с простого: целые числа 31
Понятие переменной 32
Тип Integer. Оператор присваивания. Вывод на экран 32
Операции с типом Integer 34
Стандартные функции типа Integer 36
Как представляются переменные целого типа в памяти компьютера 38
Урок 2.2. Включаем в работу вещественные числа 39
Описание вещественного типа данных (Real) 40
Форматы записи вещественных переменных 40
Вещественные операции 41
Стандартные функции типа Real 41
Запись математических выражений 43
Как представляются переменные вещественного типа в памяти
компьютера 45
Урок 2.3. Как совместить переменные целого и вещественного типа 46
Преобразование типов 46
Правила приоритета в выполняемых действиях 47
Действия надданными разных типов 47
Урок 2.4. Ввод и вывод данных 51
Вводим переменные с клавиатуры 52
Красивый вывод на экран 52
Задание значений переменных датчиком случайных чисел 55
Урок 2.5. Зачем нужны константы в программе? 57
Выводы 59
Контрольные вопросы 60
ТЕМА 3. Учимся работать с символами 61
Урок 3.1. Как компьютер понимает символы 62
Кодовая таблица ASCII 62
Описание типа Char и стандартные функции 63
Урок 3.2. Тип Char - порядковый тип! 64
Выводы 66
Контрольные вопросы 67
ТЕМА 4. Джордж Буль и его логика 68
Урок 4.1. Необходим еще один тип - логический! 69
Логический тип данных (Boolean) 70
Операции отношения 70
Ввод-вывод булевских переменных 71
Урок 4.2. Логические (булевские) операции 71
Логическое умножение (конъюнкция) 72
Логическое сложение (дизъюнкция) 72
Исключающее ИЛИ (сложение по модулю 2) 73
Логическое отрицание (инверсия) 74
Применение логических операций в программе 74
Приоритет логических операций 76
Выводы 77
Контрольные вопросы 78
ТЕМА 5. Анализ ситуации и последовательность выполнения команд 79
Урок 5.1. Проверка условия и ветвление в алгоритме 80
Полная и неполная форма оператора if 81
Оформление программ 84
Урок 5.2. Блоки операторов 85
Урок 5.3. Ветвление по ряду условий (оператор case) 90
Выводы 94
Контрольные вопросы 95
ТЕМА 6. Многократно повторяющиеся действия 96
Урок 6.1. Оператор-цикла for 97
Оператор for с последовательным увеличением счетчика 97
Оператор for с последовательным уменьшением счетчика 99
Урок 6.2. Применение циклов со счетчиком 99
Цикл в цикле 100
Трассировка 101
Вычисление суммы ряда 103
Выводы 107
Контрольные вопросы 108
ТЕМА 7. Циклы с условием 109
Урок 7.1. Цикл с предусловием 110
Описание цикла с предусловием 110
Приближенное вычисление суммы бесконечного ряда 111
Введение числа в указанную целую степень 114
Урок 7.2. Цикл с постусловием 118
Описание цикла с постусловием 119
Использование циклов repeat и while 119
Относительность выбора операторов while и repeat 123
Выводы 129
Контрольные вопросы 129
ТЕМА 8. Массивы - структурированный тип данных 131
Урок 8.1. Хранение однотипных данных в виде таблицы 132
Основные действия по работе с массивами 133
Описание массива на языке Паскаль 133
Заполнение массива случайными числами и вывод массива на экран 134
Создание пользовательского типа данных 137
Поиск максимального элемента массива 141
Вычисление суммы и количества элементов массива с заданными свойствами 146
Урок 8.2. Поиск в массиве 148
Определение наличия в массиве отрицательного элемента с использованием флажка 149
Определение наличия в массиве отрицательных элементов путем вычисления их количества 150
Нахождение номера отрицательного элемента массива 152
Урок 8.3. Двумерные массивы 156
Выводы 158
Контрольные вопросы 159
ТЕМА 9. Вспомогательные алгоритмы. Процедуры и функции. Структурное программирование 160
Урок 9.1. Конструирование алгоритма «сверху вниз» 161
Практическая задача с использованием вспомогательных алгоритмов 162
Урок 9.2. Пример работы с функцией: поиск максимального элемента 169
Выводы 171
Контрольные вопросы 171
ТЕМА 10. Как работать с символьными строками 1 72
Урок 10.1. Работаем с цепочками символов: тип String 1 73
Описание строковой переменной 173
Основные действия со строками 174
Урок 10.2. Некоторые функции и процедуры Паскаля для работы со строками 175
Использование библиотечных подпрограмм работы со строками 175
Выводы 177
Контрольные вопросы 178
ТЕМА 11. Процедуры и функции с параметрами 179
Урок 11.1. Простые примеры использования подпрограмм с параметрами 180
Простейшие процедуры с параметрами 180
Формальные и фактические параметры 182
Простейшие функции с параметрами 183
Урок 11.2. Способы передачи параметров 184
Выводы 187
Контрольные вопросы 187
ТЕМА 12. Файлы: сохраняем результаты работы до следующего раза 189
Урок 12.1. Как работать с текстовым файлом 190
Открытие файла для чтения 190
Открытие файла для записи 193
Урок 12.2. Сохранение двумерного массива чисел в текстовом файле 196
Сохранение числовых данных в текстовом файле 196
Сохранение массива чисел в текстовом файле 197
Дописывание информации в конец файла 201
Выводы 202
Контрольные вопросы 203
ТЕМА 13. Графический режим работы. Модуль Graph 204
Урок 13.1. Включаем графический режим работы 205
Особенности работы с графикой 205
Переключение в графический режим видеоадаптера 206
Урок 13.2. Продолжаем изучать возможности модуля Graph 208
Рисование линий средствами модуля Graph 209
Рисование окружностей средствами модуля Graph 210
Выводы 212
Контрольные вопросы 212
ТЕМА 14. Операторы, изменяющие естественный ход программы 213
Урок 14.1. Использование оператора безусловного перехода goto 215
Урок 14.2. Операторы, изменяющие ход выполнения цикла 218
Оператор break 2.19
Оператор continue 220
Выводы 220
Контрольные вопросы 221
Приложение 1. Элементы блок-схем 222
Приложение 2. Домашние задания 224
Задания к главе 2 224
Задания к главе 4 227
Задания к главам 6-7 229
Задания к главе 8 236
Алфавитный указатель 254

2-е изд. - СПб.: 2011. - 320 с .

Эта книга - не учебник, а скорее помощник в освоении языка программирования Паскаль, с которым на уроках информатики знакомятся все школьники. Она состоит из уроков, посвященных практическим вопросам программирования и решения задач. Многочисленные примеры позволяют лучше понять, как разработать алгоритм, написать собственную программу, правильно оформить ее текст. Советы и примечания помогают читателю обратить внимание на важные детали, позволяя избежать подводных камней и более эффективно писать программы. Книга подготовлена преподавателями информатики в школе, имеющими большой опыт многолетней практической работы. Во второе издание добавлено несколько новых глав, посвященных записям, динамическим переменным, стеку, очереди и спискам. Также освещена одна из самых сложных тем в программировании - построение рекурсивных алгоритмов.

Формат: pdf (2011, 2-е изд., 320с.)

Размер: 14,5 Мб

Смотреть, скачать: docs.google.com

Содержание
Предисловие ко второму изданию 15
Вступление 16
От издательства 16
ТЕМА 1. Как написать простую программу на Паскале 17
Урок 1.1. Выводим сообщение на экран дисплея 18
Урок 1.2. Как заложить эту программу в компьютер 19
Этапы создания компьютерной программы 20
Урок 1.3. Оформление текста на экране 28
Выводы 34
Контрольные вопросы 34
ТЕМА 2. Как включить в работу числовые данные 36
Урок 2.1. Начнем с простого: целые числа 37
Понятие переменной 38
Тип Integer. Оператор присваивания. Вывод на экран 38
Операции с типом Integer 40
Стандартные функции типа Integer 42
Как представляются переменные целого типа
в памяти компьютера 43
Урок 2.2. Включаем в работу вещественные числа 45
Описание вещественного типа данных (real) 45
Форматы записи вещественных переменных 46
Вещественные операции 46
Стандартные функции типа real 47
Запись математических выражений 48
Как представляются переменные вещественного типа в памяти компьютера 50
Урок 2.3. Как совместить переменные целого и вещественного типа 51
Преобразование типов 51
Правила приоритета в выполняемых действиях 52
Действия над данными разных типов 53
Урок 2.4. Ввод и вывод данных 56
Вводим переменные с клавиатуры 57
Красивый вывод на экран 57
Задание значений переменных датчиком случайных чисел 61
Урок 2.5. Зачем нужны константы в программе? 62
Выводы 64
Контрольные вопросы 64
ТЕМА 3. Учимся работать с символами 66
Урок 3.1. Как компьютер понимает символы 67
Кодовая таблица ASCII 67
Описание типа Char и стандартные функции 68
Урок 3.2. Тип Char - порядковый тип! 70
Выводы 71
Контрольные вопросы 72
ТЕМА 4. Джордж Буль и его логика 73
Урок 4.1. Необходим еще один тип - логический! 74
Логический тип данных (Boolean) 75
Операции отношения 75
Ввод-вывод булевских переменных 76
Урок 4.2. Логические (булевские) операции 76
Логическое умножение (конъюнкция) 76
Логическое сложение (дизъюнкция) 77
Исключающее ИЛИ (сложение по модулю 2) 77
Логическое отрицание (инверсия) 78
Применение логических операций в программе 78
Приоритет логических операций 80
Выводы 81
Контрольные вопросы 81
ТЕМА 5. Анализ ситуации и последовательность выполнения команд 82
Урок 5.1. Проверка условия и ветвление в алгоритме 83
Полная и неполная форма оператора if 84
Оформление программ 86
Урок 5.2. Блоки операторов 88
Урок 5.3. Ветвление по ряду условий (оператор case) 92
Выводы 96
Контрольные вопросы 96
ТЕМА 6. Многократно повторяющиеся действия 98
Урок 6.1. Оператор цикла for 99
Оператор for с последовательным увеличением счетчика 100 Оператор for с последовательным уменьшением счетчика 101
Урок 6.2. Применение циклов со счетчиком 101
Цикл в цикле 102
Трассировка 103
Вычисление суммы ряда 105
Выводы 108
Контрольные вопросы 109
ТЕМА 7. Циклы с условием 110
Урок 7.1. Цикл с предусловием 111
Описание цикла с предусловием 111
Приближенное вычисление суммы бесконечного ряда 112
Возведение числа в указанную целую степень 115
Урок 7.2. Цикл с постусловием 119
Описание цикла с постусловием 120
Использование циклов repeat и while 120
Относительность выбора операторов while и repeat 123
Выводы 129
Контрольные вопросы 129
ТЕМА 8. Массивы - структурированный тип данных 131
Урок 8.1. Хранение однотипных данных в виде таблицы 132
Основные действия по работе с массивами 133
Описание массива на языке Паскаль 133
Заполнение массива случайными числами и вывод массива на экран 134
Создание пользовательского типа данных 137
Поиск максимального элемента массива 140
Вычисление суммы и количества алементов массива с заданными свойствами 144
Урок 8.2. Поиск в массиве 148
Определение наличия в массиве отрицательного алемента с использованием флажка 148
Определение наличия в массиве отрицательных алементов путем вычисления их количества 149
Нахождение номера отрицательного алемента массива 150
Урок 8.3. Двумерные массивы 154
Выводы 156
Контрольные вопросы 157
ТЕМА 9. Вспомогательные алгоритмы. Процедуры и функции. Структурное программирование 1 58
Урок 9.1. Конструирование алгоритма «сверху вниз» 159
Практическая задача с использованием вспомогательных алгоритмов 160
Урок 9.2. Пример работы с функцией: Поиск максимального элемента 167
Выводы 168
Контрольные вопросы 169
ТЕМА 10. Как работать с символьными строками 170
Урок 10.1. Работаем с цепочками символов: тип String 171
Описание строковой переменной 171
Основные действия со строками 172
Урок 10.2. Некоторые функции и процедуры Паскаля для работы со строками 173
Использование библиотечных подпрограмм работы со строками 173
Выводы 175
Контрольные вопросы 175
ТЕМА 11. Процедуры и функции с параметрами 176
Урок 11.1. Простые примеры использования подпрограмм с параметрами 177
Простейшие процедуры с параметрами 177
Формальные и фактические параметры 179
Простейшие функции с параметрами 179
Урок 11.2. Способы передачи параметров 181
Выводы 183
Контрольные вопросы 184
ТЕМА 12. Файлы: сохраняем результаты работы до следующего раза 185
Урок 12.1. Как работать с текстовым файлом 186
Открытие файла для чтения 186
Открытие файла для записи 188
Урок 12.2. Сохранение двумерного массива чисел в текстовом файле 192
Сохранение числовых данных в текстовом файле 192
Сохранение массива чисел в текстовом файле 192
Дописывание информации в конец файла 196
Выводы 197
Контрольные вопросы 197
Тема 13. Графический режим работы. Модуль Graph 199
Урок 13.1. Включаем графический режим работы 200
Особенности работы с графикой 200
Переключение в графический режим видеоадаптера 201
Урок 13.2. Продолжаем изучать возможности модуля Graph 203
Рисование линий средствами модуля Graph 203
Рисование окружностей средствами модуля Graph 205
Выводы 206
Контрольные вопросы 207
Тема 14. Операторы, изменяющие естественный ход программы 208
Урок 14.1. Использование оператора безусловного перехода goto 210
Урок 14.2. Операторы, изменяющие ход выполнения цикла 213
Оператор break 213
Оператор continue 214
Выводы 215
Контрольные вопросы 215
Тема 15. Группируем данные: записи 216
Урок 15.1. Описание типа данных record 218
Урок 15.2. Когда и как разумно использовать записи 220
Создание собственного типа данных - запись 220
Массив записей 220
Оператор присоединения with 221
Пример выбора структуры данных 223
Записи записей 224
Выводы 225
Контрольные вопросы и задания 225
Тема 16. Динамические переменные 226
Урок 16.1. Выделение памяти 227
Урок 16.2. Адреса 229
Урок 16.3. Указатели 230
Указатели на отдельные переменные 230
Указатели на блоки переменных 232
Урок 16.4. Динамическое выделение памяти 232
New и Dispose 233
Динамическое выделение памяти для массивов 235
GetMem и FreeMem 236
Обращение к элементам массива, созданного динамически 237
Массив переменной длины 238
Выводы 241
Контрольные вопросы 242
Тема 17. Динамические структуры данных. Стек 244
Урок 17.1. Опишем тип данных 245
Урок 17.2. Создание стека и основные операции со стеком 247
Добавление элемента в стек (Push) 248
Извлечение элемента из стека (Pop) 251
Проверка стека на пустоту (StacklsEmpty) 252
Урок 17.3. Использование стека 253
Программирование стека при помощи массива 255
Выводы 256
Контрольные вопросы и задания 256
Тема 18. Динамические структуры данных. Очередь 258
Урок 18.1. Принцип работы и описание типа данных 259
Урок 18.2. Основные операции с очередью 261
Добавление элемента в очередь (EnQueue) 261
Извлечение элемента из очереди (DeQueue) 263
Проверка очереди на пустоту (QueuelsEmpty) 264
Урок 18.3. Использование очереди 264
Программирование очереди при помощи массива 267
Выводы 269
Контрольные вопросы 269
Тема 19. Динамические структуры данных. Однонаправленный список 270
Урок 19.1. Описание типа данных и принцип работы 271
Урок 19.2. Основные операции с однонаправленным списком 272
Последовательный просмотр всех элементов списка 272
Помещение элемента в список 273
Удаление элемента из списка 275
Урок 19.3. Обработка списков 276
Целесообразность использования однонаправленного списка 278
Выводы 280
Контрольные вопросы 280
Тема 20. Рекурсия 281
Урок 20.1. Описание принципа 282
Урок 20.2. Ханойские башни 285
Урок 20.3. Структура рекуррентной подпрограммы 287
Урок 20.4. Пример рекуррентного решения нерекуррентной задачи 288
Урок 20.5. Пример рекуррентного решения рекуррентной задачи 289
Выводы 291
Контрольные вопросы 291
Приложение 1. Элементы блок-схем 292
Приложение 2. Задачи 295
Integer. Описание. Ввод. Вывод. Операции 296
Real. Описание. Ввод. Вывод. Операции и функции 296
Real. Запись и вычисление выражений 297
Char. Описание. Ввод. Вывод. Функции 298
Boolean. Запись выражений 298
Boolean. Вычисление выражений 299
If. Простые сравнения. Min/max/средний 300
If. Уравнения и неравенства с параметрами 300
For. Перечисления 300
For. Вычисления со счетчиком цикла 301
For. Перебор со сравнениями 302
While-Repeat. Поиск 302
While-Repeat. Ряды 303
Графика. Прямые 303
Графика. Окружности 304
Массивы. Заполнение, вывод, сумма/количество 305
Массивы. Перестановки 305
Массивы. Поиск 306
Массивы. Проверки 307
Массивы. Максимумы 307
Подпрограммы без параметров 307
Строки. Часть I 308
Строки. Часть II 309
Подпрограммы с параметрами. Часть I 309
Подпрограммы с параметрами. Часть II 310
Подпрограммы с параметрами. Часть III 310
Файлы 311
Однонаправленный список 312
Рекурсия 313

После выхода первого издания книги к нам стали все чаще обращаться наши коллеги и ученики с просьбой дополнить первое издание информацией о наиболее изучаемых и востребованных структурах данных. В это издание мы добавили несколько глав, посвященных записям, динамическим переменным, стеку, очереди и спискам. Также мы постарались осветить одну из самых сложных тем в программировании - построение рекурсивных алгоритмов.
В приложении мы решили отказаться от сборника домашних заданий с множеством вариантов по нескольким темам. Вместо этого мы поместили в приложение большое число тематических заданий, организованных блоками по 5-8 задач. Задания в каждом блоке расположены от простого к сложному. Мы используем их на наших уроках для организации практических занятий при закреплении теоретического материала (одно занятие - один блок).
Авторы выражают глубочайшую признательность одному из лучших своих учеников, доценту кафедры безопасности информационных систем СПбГУАП, к. т. н. Евгению Михайловичу Линскому за поддержку, множество полезных советов и большую помощь при работе над вторым изданием книги.



Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter
ПОДЕЛИТЬСЯ:
NexxDigital - компьютеры и операционные системы