Программирование линейных алгоритмов Учитель информатики Трифонова Светлана Юрьевна
Что такое алгоритм? Конечный набор точных и понятных предписаний, позволяющих механически решать конкретную задачу из определенного класса однотипных задач.
Назовите базовые структуры алгоритмов? Следование (линейный) Ветвление Повторение (цикл)
В какой форме записываются алгоритмы? Словесная Графическая Программная
Составьте алгоритм нахождения суммы чисел А и В Словесная форма: 1. Задать два числа А и В 2. Найти сумму этих чисел S=А+В
Графическая форма:
Как запишется алгоритм на языке программирования Turbo Pascal?
ЛИНЕЙНЫЕ ПРОГРАММЫ могут включать в себя операторы: Присваивания Ввода Вывода
Оператор присваивания А:=В; где А – переменная, В – выражение; Типы переменной А и значение переменной В должны соответствовать друг другу. Например: x, y: integer; y:=2x+4;
Какие из следующих последовательностей символов являются операторами присваивания? А) X:=Y; Б) MIN=K+1; В) Rrr=125+1*A; Г) Str:=‘120*Y’;
Пусть значения переменных X и Y равны, соответственно, 3 и 2, какие значения будут иметь эти переменные после выполнения операторов присваивания? А) X:=X+2*Y; Y:=Y/2; (X=7, Y=1) Б) X:=1; X:=X+Y; (X=3, Y=2) В) X:=Y; Y:=X; (X=2, Y=2)
ОПЕРАТОР ВВОДА Оператор ввода значений с клавиатуры имеет вид: ReadLn(A1,A2,…,An); где A1,A2,…,An – имена переменных. Readln; - переход на новую строку при вводе данных. Такой оператор применяется, когда исполнение программы желательно задержать до нажатия клавиши Enter.
ОПРЕАТОР ВЫВОДА WRITE(B1,B2,…,Bn); где B1,B2,…,Bn – выражения типов: Integer, Char, Real, String, Boolean. Значения типа Integer – выводятся в обычной форме в виде целого числа. Значения типа Real – в простейшем случае выводятся в форме с порядком, при этом мантисса содержит 7 цифр.
Пример 1 WRITE(123.456); на экране – 1.234560Е02 WRITE(-0.000123); на экране – -1.230000Е-04 Для удобства восприятия вывода существует возможность задания маски: WRITE(A:N:M); N – выражение, обозначающее общее число позиций, отводимых под значение А M – выражение, обозначающее число позиций, отводимых под дробную часть.
Пример 2 WRITE(123.456:10:4); WRITE(123.456:6:2); Значения типа Char и String выводятся в виде одного или последовательности символов. Значения типа Boolean выводятся в виде True или False. 1 2 3 . 4 5 6 0
WRITELN(B1,B2,…,Bn); - отличается от первого тем, что после вывода последнего значения курсор переводится в начало следующей строки экрана. WRITELN; Переводит курсор на следующую строку.
Пример 3. Вывести на экран фразу – «Моя первая программа». Имя этой программы primer3. Заметим, что в имени программы не должно быть пробелов, оно должно начинаться с буквы, состоять только из латинских букв, цифр и некоторых символов, не допускается использование точки и запятой.
Program primer3; (Описательной части нет, а сразу идет раздел операторов, начинающийся со служебного слова Begin) Begin writeln(‘Моя первая программа’); (оператор вводит текст) readln; (задерживает исполнение программы до нажатия клавиши Enter) end. (конец программы)
Пример 4. Написать программу нахождения суммы чисел А и В, вводимых с клавиатуры. - Вспомним этапы решения задач на компьютере. Для начала определим, что нам известно? (Известны два числа А и В.) - Какая математическая модель подойдет для решения этой задачи? (S=A+B)
Структуру программы в Паскале Program primer4; { Заголовок программы } Var A,B,S: Integer; {Раздел описания переменных } Begin { Раздел операторов} Writeln (‘Введите значения чисел А, В’); {оператор вывода} Read(A,B); {оператор ввода значений переменных с клавиатуры} S:=A+B; {оператор присваивания} Writeln(‘S=‘, S); {оператор вывода значения} Readln; {оператор ждет нажатия клавиши ввода} End. {конец программы}
Практическая работа Выполнить программу на компьютере * Написать программу вычисления площади равнобедренной трапеции. Значения основания и боковой стороны вводятся с клавиатуры.
Вопросы: Какие операторы включают линейные программы? Назовите операторы ввода? Назовите операторы вывода? Чем отличается оператор Write от оператора Writeln?