- •Алещенко а.С.
- •2 Раздел
- •Раздел 1
- •1.1. Алгоритмы и формы описания алгоритмов. Блок-схемы линейных алгоритмов
- •1.2. Типовая структура алгоритмического языка
- •Программные единицы
- •1.3. Операторы ввода и вывода данных. Оболочка Турбо-Паскаля
- •Операторы ввода и вывода.
- •1.4. Циклические алгоритмы и организация циклов
- •Использование псевдографики для оформления результатов
- •1.5. Разветвляющиеся алгоритмы и их реализация
- •1.6. Обработка массивов. Индексированные переменные
- •Правила использования вложенных циклов
- •1.7. Вспомогательные алгоритмы. Нестандартные функции
- •Раздел 2
- •2.1. Типы циклических алгоритмов
- •2.2. Структуры разветвляющихся алгоритмов
- •Практическая часть.
- •2.3. Обработка индексированных переменных
- •Псевдографика в Турбо-Паскале
- •Масштабирование графиков
- •2.4. Обработка символьной информации на Турбо-Паскале
- •2.5. Вспомогательные алгоритмы: процедуры
«Основы программирования на языке Турбо-Паскаль»
Методические указания
Алещенко а.С.
Москва 2012
Введение
Одним из простейших программных пакетов, пригодных для использования на персональных компьютерах, является Турбо-Паскаль, который позволяет освоить основные типовые конструкции алгоритмических языков. В дальнейшем обучении эти знания позволяют перейти к изучению других алгоритмических языков или к углубленному изучению других версий Паскаля. Язык Паскаль используется во многих современных программных продуктах, например, в Системах управления базами данных (СУБД).
В первом разделе изучаются основные приемы программирования и типы алгоритмов (линейные, циклические и разветвляющиеся, вспомогательные). Во втором разделе эти навыки расширяются и углубляются при изучении новых типов данных (символьные и булевы переменные) и вспомогательных алгоритмов.
1 раздел
1.1 |
Алгоритмы и формы описания алгоритмов. Структурные схемы. Линейные алгоритмы и их описание |
|
1.2 |
Структура алгоритмического языка. Структура программы. |
|
1.3 |
Операторы ввода и вывода данных. Оболочка Турбо-Паскаль |
|
1.4 |
Циклические алгоритмы и организация циклов. |
|
1.5 |
Разветвляющиеся алгоритмы. |
|
1.6 |
Обработка массивов. Индексированные переменные |
|
1.7 |
Вспомогательные алгоритмы. Нестандартные функции на Паскале |
|
2 Раздел
2.1 |
Циклические алгоритмы и организация циклов (повторение) |
|
2.2 |
Разветвляющиеся алгоритмы (повторение). |
|
2.3 |
Индексированные переменные. |
|
2.4 |
Обработка символьной информации. |
|
2.5 |
Вспомогательные алгоритмы: процедуры. |
|
Раздел 1
1.1. Алгоритмы и формы описания алгоритмов. Блок-схемы линейных алгоритмов
Как известно, существуют четыре типа алгоритмов:
линейные алгоритмы, действия в которых выполняются в том порядке, в котором они перечислены;
разветвляющиеся алгоритмы, которые содержат блоки принятия решения, проверяющие выполнение каких-либо условий. Если условие выполняется (формируется результат проверки «истина»), то выполняются определенные действия, называемые «ветвь 1», иначе выполняются действия «ветвь 2»;
циклические алгоритмы, повторяющие одни и те же действия с разными значениями переменных. Одна из переменных называется параметром цикла, и от ее значения зависит, требуется ли повторять выполнение цикла;
вспомогательные алгоритмы (подпрограммы) – это типовая часть алгоритма, выполняющая одни и те же действия с разными переменными.
В практике используются следующие способы описания алгоритмов:
1) словесное описание алгоритма – это перечисление действий (шагов), позволяющее выполнить все действия, не сомневаясь в их последовательности;
2) блок-схема алгоритма состоит из блоков, отвечающих общим требованиям (см. раздаточный материал лист РМ1). Это наглядный графический способ представления алгоритма, он не зависит от дальнейшего способа реализации (выполнения) алгоритма;
3) программа на каком-либо алгоритмическом языке – это запись алгоритма в виде инструкций (операторов или команд), которые расшифровываются в ПК и затем выполняются.
Существует множество алгоритмических языков, классификация алгоритмических языков (см. рис.1.1):
- универсальные алгоритмические языки (Турбо-Паскаль, Си) могут использоваться для программирования любых типов алгоритмов;
- проблемно-ориентированные языки более удобны для алгоритмов определенного типа. Например, для инженерных расчетов разработан язык Фортран, а для совмещения вычислений с графическим представлением (интерфейсом) используются объектно-ориентированные языки (Microsoft Visual Basic, Borland Delphi).
Алгоритмические языки
(языки высокого уровня)
Универсальные Проблемно-ориентированные
Рис.1.1
Рассмотрим подробнее построение описания линейного алгоритма на примере вычисления математического выражения:
X = a2 + b*2,5 при a=1,1 и b=0,8
Словесное описание алгоритма:
Шаг 1. Присвоить значения а=1,1 b=0,8.
Шаг 2. Вычислить С1= a*a.
Шаг 3. Вычислить C2=b*2,5.
Шаг 4. Вычислить X=C1+C2.
Шаг 5. Вывести результат на экран или на печать.
Блок-схема алгоритма приведена на рис.1.2
Начало
a=1,1 b=0,8
С1 = A*A
C2 = B*2,5
X = C1+C2
Вывод C1
Конец
Рис 1.2
Часто при построении блок-схемы алгоритма есть возможность оптимизировать вычисления. Например, требуется вычислить значение выражения
при a = 3,56; b = 4,45; c = 3,81
Здесь можно ввести промежуточную переменную, которой можно дать новое имя:
x1 = c2 – 1,26 ,
тогда основное выражение будет иметь вид: