Линейные и разветвляющиеся алгоритмы. Реализация на языке Pascal.
Цель урока: иметь представление о линейных и разветвляющихся алгоритмах и реализации их на языке программирования Pascal. Переход на предыдущий слайд Переход на следующий слайд Переход на оглавление Навигационные клавиши Переход в начало раздела Справка
Оглавление Повторим Линейные алгоритмы Алгоритмы ветвления Справочная информация
Повторим Алгоритм Алгоритм – это четко определенный план действий исполнителя, для достижения результата. Свойства алгоритма дискретность: состоит из отдельных шагов (команд) понятность: должен включать только команды, известные исполнителю (входящие в СКИ) определенность: при одинаковых исходных данных всегда выдает один и тот же результат конечность: заканчивается за конечное число шагов массовость: может применяться многократно при различных исходных данных корректность: дает верное решение при любых допустимых исходных данных Что такое алгоритм? Свойства алгоритма?
Повторим Программа – это алгоритм, записанный на каком-либо языке программирования набор команд для компьютера Команда – это описание действий, которые должен выполнить компьютер. откуда взять исходные данные? что нужно с ними сделать? Оператор – это команда языка программирования высокого уровня.
Линейные алгоритмы Линейный алгоритм - это такой, в котором все операции выполняются последовательно одна за другой.
Линейные алгоритмы начало конец c := a + b; ввод a, b вывод c program qq;... {описание переменных} begin readln (a,b); c:= a + b; writeln (c); end.
Линейные алгоритмы Пример программы Задача. Ввести два целых числа и вывести на экран их сумму. program qq; var a, b, c: integer; begin read ( a, b ); c := a + b; writeln ( c ); end. Скопируйте программу в PascalABC.NET и проанализируйте ход ее выполнения
Алгоритм ветвления Алгоритм ветвления - в зависимости от некоторого условия необходимо выполнить либо одно, либо другое действие.
if then begin {что делать, если условие верно} end else begin {что делать, если условие неверно} end; if then begin {что делать, если условие верно} end else begin {что делать, если условие неверно} end; Особенности: перед else НЕ ставится точка с запятой вторая часть ( else …) может отсутствовать (неполная форма) если в блоке один оператор, можно убрать слова begin и end Алгоритм ветвления
начало max:= a; ввод a,b вывод max a > b? max:= b; конец да нет program qq; var a, b, max: integer; begin writeln ('Введите два целых числа'); read ( a, b ); if a > b then begin end else begin end; writeln ('Наибольшее число ', max); end. max := a ; max := b ;
Алгоритм ветвления неполная форма ветвления начало max:= a; ввод a,b вывод max max:= b; конец да нет b > a?
Алгоритмы ветвления Пример программы Задача. Дано 2 числа. Найти максимальное из них. Скопируйте программу в PascalABC.NET и проанализируйте ход ее выполнения. Попытайтесь реализовать задачу при помощи неполной формы ветвления. program qq; var a, b, max: integer; begin writeln ('Введите два целых числа'); read ( a, b ); if a > b then begin max:=a; end else begin max:=b; end; writeln ('Наибольшее число ', max); end.
Справочная информация Простейшая структура программы program qq; begin { начало программы } end. { конец программы } Переменная – это величина, имеющая имя, тип и значение. Значение переменной можно изменять во время работы программы. Типы переменных: integer{ целая } real{ вещественная }
Справочная информация a := 5; Оператор присваивания При записи нового значения старое стирается! ! 5 5 Оператор – это команда языка программирования (инструкция). Оператор присваивания – это команда для записи нового значения в переменную.
Справочная информация read ( a ); 1. Программа ждет, пока пользователь введет значение и нажмет Enter. 2. Введенное значение записывается в переменную a. ! Оператор ввода 5 5
Справочная информация { вывод значения переменной a} { вывод значения переменной a и переход на новую строчку} { вывод текста } {вывод текста и значения переменной c} write( a ); writeln( a ); writeln( 'Привет!' ); writeln( 'Ответ: ', c ); writeln ( a, '+', b, '=', c );
Справочная информация Презентация создана на основе презентации К.Ю. Полякова «Программирование на языке Pascal»