Алгоритмы, структуры алгоритмов, структурное программирование Этапы решения задачи на компьютере 1. 2. 3. 4. Постановка задачи. Формализация задачи. Построение алгоритма. Составление программы на языке программирования. 5. Отладка и тестирование программы. 6. Проведение расчетов и анализ полученных результатов. Программист должен обладать следующими знаниями и навыками: • Уметь строить алгоритмы; • Знать языки программирования; • Уметь работать в соответствующей системе программирования. Основой программистской грамотности является развитое алгоритмическое мышление. Алгоритм – это последовательность команд управления каким-либо исполнителем. Исполнитель – компьютер Совокупность величин, с которыми работает компьютер, принято называть данными. Классификация данных По отношению к алгоритму: • Исходные • Промежуточные • Итоговые(резуль таты) По значениям: • Константы • Переменны е По типам: По структуре: • Целые • Простые • Вещественные • структурирова • Логические нные • символьные Компьютер + система программирования = исполнитель алгоритмов обработки данных. Система команд исполнителя: • Присваивание • Ввод • Вывод • Ветвление • Цикл • Обращение к подпрограмме Комбинация базовых структур: последовательность, вложенность Структурный алгоритм(программа): построенный из базовых алгоритмических структур, не содержащий команды безусловного перехода. Эволюция программирования Программирова ние в машинных кодах(начало 1950-х годов) Машинноориентированные языки программирования: автокоды, ассемблеры(2-я половина 1950-х годов и позже) Машиннонезависимые языки программирования высокого уровня – ЯПВУ (1960-е годы и позже) Структура процедурного ЯПВУ Элементы языка: Алфавит, синтаксис, семантика. Организация действий над данными: ввод/вывод, операции, операторы. Организация данных: типы и структуры данных. Паскаль – процедурный язык структурного программирования. Этапы развития: стандартный Паскаль (Н.Вирт),Турбо Паскаль, Object Pascal, Delphi. Общий вид программы program <имя программы>; Label< раздел меток>; const <раздел констант>; Type<раздел типов>; var < раздел переменных>; Procedure (Function) <раздел подпрограмм>; Begin <раздел операторов> end.