- •Основные элементы языка. История создания и развитие языка программирования
- •Структурная схема программы на алгоритмическом языке.
- •Лексика языка. Типы данных.
- •Типы данных
- •Переменные и константы.
- •Выражения и операции.
- •Операторы языка. Синтаксис операторов присваивания.
- •Синтаксис операторов ввода-вывода.
- •Операторы Write и WriteLn
- •Операторы Read и ReadLn
- •Составление программ линейной структуры.
- •Синтаксис операторов безусловного и условного переходов.
- •Составной оператор.
- •Вложенные условные операторы.
- •Составление программ разветвляющейся структуры. Выберите из предложенного ниже списка задачи для самостоятельного решения.
- •Составление программ сложной разветвляющейся структуры.
- •Оператор case. Оператор выбора case. Решение задач.
- •Оператор goto.
- •Синтаксис операторов циклов.
- •Циклические конструкции.
- •Циклы с предусловием.
- •Задачи для самостоятельного решения:
- •Циклы со счетчиком.
- •Общая форма записи цикла со счетчиком
- •Циклы с постусловием.
- •Задачи для самостоятельного решения:
- •Составление программ циклической структуры.
- •Проверьте себя, ответив на вопросы:
- •Доступ к элементам массива.
- •Изменение значения некоторых элементов
- •Нахождение номеров элементов с заданным свойством
- •Нахождение количества элементов с заданным свойством
- •Задачи для самостоятельного решения
- •Вставка элементов в одномерный массив. Вставка одного элемента
- •Вставка нескольких элементов
- •Задачи для самостоятельного решения
- •Перестановка двух элементов
- •Перестановка части массива
- •Работа с несколькими массивами
- •Задачи на использование одномерных массивов
- •Самостоятельное решение задач.
- •Формирование значений элементов массива случайным образом и с клавиатуры и вывод их на экран
- •Нахождение количества элементов с данным свойством
- •Определить, отвечает ли заданный массив некоторым требованиям
- •Изменение значений некоторых элементов, удовлетворяющих заданному свойству
- •Заполнение массива по правилу
- •Задачи для самостоятельного решения
- •Вставка строк и столбцов
- •Удаление строк и столбцов
- •Задачи для самостоятельного решения Задачи на вставку элементов:
- •Задачи на удаление элементов:
- •Задачи для самостоятельного решения
- •Задачи на использованиедвумерных массивов
- •I. Заполнение и анализ элементов массива
- •II. Работа с одномерным и двумерным массивами
- •Дополнительные задачи (на усмотрение учителя)
- •Для любопытных Графические программы с применением массивов.
- •Сортировка выбором
- •Сортировка массива с помощью рекурсии
- •Рекурсивная сортировка слиянием (для любопытных)
- •Строка. Тип данных string. Строковые переменные, их описание. Длина строки. Операции над строками.
- •Задачи для самостоятельного решения
- •Задачи для дополнительного решения (на усмотрение учителя)
- •Стандартные функции для работы со строками (concat,copy,length, pos,upcase). Функция Length
- •Функция Upcase
- •Функция Copy
- •Функция Pos
- •Функция Concat
- •Задачи для самостоятельного решения
- •Стандартные процедуры для работы со строками (delete, insert,str,val).
- •Задачи для самостоятельного решения
- •Задачи для дополнительного решения (на усмотрение учителя)
- •Контрольная работа.
- •Сформулируйте тексты решенных ниже задач
- •Выберите с учителем задачи для самостоятельного решения:
- •Решение задач.
- •Бегущая строка. Пример программы осыпающихся букв. Строки в графическом режиме (для увлеченных программированием).
- •Тип данных char. Операции над символами.
- •1.Организовать ввод фио только на русском языке.
- •2.Вывести все совершенные числа в данном диапазоне.
- •3.Введенное число - полиндром?
- •2.Найти факториал числа с помощью рекурсии.
- •Задачи на построение процедур и функций
- •Самостоятельное решение задач.
- •I Выберите с учителем одну из предложенных ниже задач (тип Integer, real)
- •II Выберите с учителем одну из предложенных ниже задач (тип char)
- •III Выберите с учителем одну из предложенных ниже задач (тип string)
- •IV Выберите с учителем одну из предложенных ниже задач (тип record)
- •Текстовые файлы
- •Компонентные файлы
- •Бестиповые файлы
- •Последовательный и прямой доступ
- •Задачи на работу с файлами
- •Использование библиотеки crt
- •Программирование клавиатуры
- •Текстовый вывод на экран
- •Программирование звукового генератора
- •Использование библиотеки Graph
- •Переход в графический режим и возврат в текстовый
- •Краткая характеристика графических режимов работы дисплейных адаптеров
- •Процедуры и функции
- •Координаты, окна, страницы
Федеральное агентство по образованию
«Московский государственный университет экономики, статистики и информатики
(МЭСИ)»
Нижегородский колледж экономики, статистики и права филиал государственного образовательного учреждения высшего профессионального образования «Московский государственный университет экономики, статистики и информатики (МЭСИ)»
(Нижегородский филиал МЭСИ)
“УТВЕРЖДАЮ”
Зам.директора_____________________
“____”______________________ 200_г.
Методическое пособие
ПРОГРАММИРОВАНИЕ НА АЛГОРИТМИЧЕСКОМ ЯЗЫКЕ PASCAL.
Учебный предмет Основы алгоритмизации и программирования
Специальность: 2203 "Программное обеспечение вычислительной техники и автоматизированных систем"
Курс: 2
Принят на заседании цикловой комиссии _______________
_____________________________________________________
Председатель: Четина С.С.
Составили: Авакян В.А., Никеркина С.А., Четина С.С..
Содержание:
Основные элементы языка.
История создания и развития языка программирования.
Структурная схема программы на алгоритмическом языке.
Лексика языка. Типы данных.
Переменные и константы. Выражения и операции.
Операторы языка.
Синтаксис операторов присваивания.
Синтаксис операторов ввода-вывода.
Составление программ линейной структуры.
Синтаксис операторов безусловного и условного переходов
Составной оператор.
Вложенные условные операторы.
Составление программ разветвляющейся структуры.
Составление программ сложной разветвляющейся структуры.
Оператор CASE.
Оператор GOTO.
Синтаксис операторов циклов.
Циклические конструкции.
Циклы с предусловием
Циклы со счетчиком.
Циклы с постусловием.
Составление программ циклической структуры.
Массивы.
Массивы, как структурированный тип данных.
Объявление одномерного массива.
Ввод – вывод одномерных массивов.
Обработка одномерных массивов.
Объявление двумерного массива.
Ввод и вывод двумерных массивов.
Стандартные функции для массива целых и вещественных чисел.
Обработка двумерных массивов. Использование стандартных функций для работы с массивами.
Строки и множества.
Структурированные типы данных: строки.
Объявление строковых типов данных.
Поиск, удаление, замена и добавление символов в строке.
Операции со строками.
Стандартные функции и процедуры для работы со строками.
Работа с символьным типом данных.
Работа со строковым типом данных.
Использование стандартных процедур для работы со строками.
Составление программ для типа данных STRING CHAR.
Структурированные типы данных: множества.
Объявления множества.
Операции над множествами.
Использование стандартных процедур и функций для работы с множествами.
Записи.
Процедуры и функции.
Понятие подпрограммы.
Процедуры и функции, их сущность, назначение, различия.
Организация процедур, стандартные процедуры.
Процедуры, определенные пользователем: синтаксис, передача аргументов.
Формальные и фактические параметры.
Процедуры с параметрами, описание процедур.
Функции: способы организации и описания.
Вызов функции, рекурсия.
Программирование рекурсивных алгоритмов.
Стандартные функции.
Организация процедур.
Организация функций.
. Организация ввода-вывода данных.
Типы файлов.
Организация доступа к файлам.
Файлы последовательного доступа.
Открытие и закрытие файла последовательного доступа.
Запись в файл и чтение из файла последовательного доступа.
Файлы произвольного доступа.
Порядок работы с файлами произвольного доступа.
Создание структуры записи.
Открытие и закрытие файла произвольного доступа.
Запись и считывание из файла произвольного доступа.
Использование файла произвольного доступа.
Стандартные функции для файлов разного типа.
Библиотека подпрограмм.
Программирование модулей.
Модуль: синтаксис, заголовок, разделы.
Библиотеки подпрограмм: понятие и виды.
Схемы вызова библиотек.
Статическое и динамическое связывание.
Создание библиотеки подпрограмм.
Литература.
Основные элементы языка. История создания и развитие языка программирования
Язык программирования Pascal был создан Никлаусом Виртом в 1970, после его участия в работе комитета разработки стандарта языка Алгол, как язык для обучения процедурному программированию. Название языку дано в честь выдающегося французского математика, физика, литератора и философа Блеза Паскаля. Первоначально язык компилировался в байт-код, подобно языку Java. Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования. Паскаль был одним из первых таких языков. По мнению Н. Вирта, язык должен способствовать дисциплинированию программирования, поэтому, наряду со строгой типизацией, в Паскале сведены к минимуму возможные синтаксические неоднозначности, а сам синтаксис интуитивно понятен даже при первом знакомстве с языком. Тем не менее, первоначально язык обладал множеством недостатков: невозможность передачи функциям массивов переменной длины, отсутствие нормальных средств работы с динамической памятью, ограниченная библиотека ввода-вывода, отсутствие средств для подключения функций написанных на других языках, отсутствие средств раздельной компиляции и т. п. Необходимо заметить, что многие перечисленные недостатки языка не проявляются или даже становятся достоинствами при обучении программированию. Кроме того, основным языком программирования в академической среде 70-х был Фортран, обладавший гораздо более существенными недостатками, и Паскаль представлял собой значительный шаг вперед. Автор языка понимал недостатки созданного им языка, перестал его развивать и разработал языки Модула-2 и Оберон. Тем не менее, достоинства языка заставляли многие коммерческие и некоммерческие организации разрабатывать системы программирования на основе языка Паскаль. Из числа последних выделяется фирма Borland, Turbo Pascal (затем Borland Pascal) которой был значительно расширен, были устранены многие недостатки языка, добавлены новые возможности. Язык стал богаче, но одновременно, потерял переносимость и общность. Важным шагом в развитии языка, является появление свободного языка Паскаль GNU Pascal, который не только вобрал в себя черты других Паскалей, не только позволил наконец полностью отказаться от «грязных» приемов программирования, особенно присущих, скажем, Turbo Pascal, но и обеспечил черезвычайно широкую портабельность написанных на нем программ (более 20 различных платформ, под более чем 10 различными операционными системами). В настоящий момент пользуются популярностью такие версии языка как TMT Pascal, Free Pascal и GNU Pascal. Продолжает использоваться и Borland Pascal. Развитием языка Borland Pascal является Object Pascal — версия языка Паскаль расширенная средствами объектно-ориентированного программирования. Последние версии Borland Pascal лежат в основе среды программирования Delphi. В России разработан язык программирования Глагол, который имеет близкую к Паскалю идеологию, но в отличие от него изначально спроектирован на использование только русских служебных слов.