- •Основные понятия алгоритмизации
- •Понятие алгоритма
- •Свойства алгоритма
- •Формы записи алгоритма
- •Запись алгоритмов в виде блок-схем
- •Основные элементы блок-схем
- •Нахождение минимального числа n
- •Данные. Понятие типа данных
- •Типы данных
- •Структурированные типы
- •Логические основы алгоритмизации
- •Программирование. Эволюция. Классификация
- •Поколения языков программирования:
- •Классификация языков программирования.
- •Структура программ
- •Подпрограммы
- •Формальные и фактические параметры
- •Системное программирование
- •Классы систем программирования
- •3 Переменные и константы
- •Приоритет операции
- •Структура паскаль программы
- •Арифметические операции функции выражения. Арифметический оператор присваивания.
- •Оператор безусловного перехода
- •Подпрограммы – процедуры
Классификация языков программирования.
Элементы языков программирования могут рассматриваться на следующих уровнях:
Алфавит – это совокупность символов, отображаемых на экране или при печати или вводимых с клавиатуры (символы Латиница).
Лексика - это совокупность правил обозначения цепочек символов (лексем), образующих идентификаторы (переменные и метки), операторы, операции и другие лексические компоненты языка.
Синтаксис – это совокупность правил образования языковых конструкций или предложений языка программирования (блоки, составные операторы, условные операторы, операторы цикла). Особенностью синтаксиса является принцип вложенности правил построения конструкции.
Семантика – это смысловое содержание конструкции, предложение языка т.е. проверка смысловой правильности конструкции.
Фактор |
Характеристика |
Группы |
Примеры языков программирования |
Уровень языка программирования |
Степень близости языка программирования к архитектуре компьютера |
Низкий |
Автопод и Ассемблер |
Высокий |
Фортран, Паскаль, Ада, Бейсик, Си, и др. ЯВУ |
||
Сверхвысокий |
Сетл |
||
Специализация языка программирования |
Потенциальная или реальная область применения |
Общего назначения (универсальные) |
Алгол, PL/1, Бейсик, Паскаль. |
Специализированные |
Фортран (инженерные расчеты), Соbol (коммерческие задачи), Рефал, Лисп (Символьная обработка), Модула, Ада (программирование в реальном времени) |
||
Алгоритмичность (Процедурность) |
Возможность абстрагироваться от деталей алгоритма решения задач. Алгоритмичность тем выше, чем точнее приходится планировать порядок выполняемых действий. |
Процедурные |
Ассемблер, Фортран, Бейсик, Паскаль, Ада. |
Непроцедурные |
Prolog, Langi |
Структура программ
Исходная программа, как правило состоит из следующих частей:
Раздел идентификации – это область содержащая наименование программы, а также дополнительную информации для программистов или пользователей.
Раздел связи – это фрагмент текста, описывающий внешние переменные, передаваемые вызывающие программу т.е. ту часть исходных данных, которая обязательно поступает на вход программы при запуске (параметры программы).
Раздел оборудования (среда) – это описание типа ЭВМ процессором. Требования к оперативной и внешней памяти, существенных с точки зрения выполнимой программы.
Раздел данных – это идентификация переменных, используемых в программе и их типов.
Раздел процедур – это программная часть, содержащая описание процессов обработки данных
К типовым операторам управления вычислительным процессом относят:
Организация циклов.
Ветвление программы.
Блоки операторов.
Операторы перевода
Типичные функции:
Стандартные
Алгебраические
Арифметические.
Стандартные строчные
Нестандартные
Операторы присваивания значений:
Пересылка значений переменных, констант, функций, принимающую переменную.
Принимающую переменную
Вычисление значений арифметической переменной
Вычисление значений строчной переменной
Вычисление логических переменных.
Д/з учить начиная с поколения (после таблицы)