Оператор If
Оператор If изменяет порядок выполнения операторов в зависимости от истинности или ложности некоторого условия. Существует два варианта оператора:
If <условие> Then <оператор 1> Else <оператор 2>
If <условие> Then <оператор>
Условие может быть простым или сложным. Сложные условия образуются с помощью логических операций AND, OR, NOT. При записи условий могут использоваться все возможные операции отношения. Результат выражения всегда имеет булевский тип (истина или ложь).
В первом варианте, если условие принимает значение "Истина", выполняется оператор 1, если условие - "Ложь", выполняется оператор 2.
Пример: Создать разветвляющийся алгоритм линейной структуры.
Исходные данные:
с
условием, что
Начнем с построения блок-схемы алгоритма:
После того, как мы построили блок-схему алгоритма, строго следуя ей пишем код программы в Turbo Pascal.
Начало программы будет таким же, как и в написание линейного алгоритма, изменится только блок описания условия:
…
If x<=0 then begin y1:=sin(1.5*x+a);
Writeln (‘y1=’, y1:6:2);
End else begin
If x>a then begin y2:=EXP(-(SQR(x)-a));
Writeln (‘y2=’, y2:6:2);
…
Оператор цикла For
Оператор цикла For подходит для решения задач с известным числом повторений. Рассмотрим пример, в ходе которого мы и познакомимся с этим оператором.
Пример: Создать циклический алгоритм, вычислить сумму 10 членов ряда.
Блок-схема алгоритма:
Код программы будет выглядеть следующим образом:
Var i,Kn: Integer;
y1,y,UN:real;
Begin
Writeln (‘введите значения Kn’);
Readln (Kn);
y
:=0;
первоначально задаем
значение функции у
For i:=1 to kn do i=n параметр цикла от 1 до 10
B
egin
UN:=1/SQR(i);
член
ряда
y :=y+UN; к первоначальному значению будет прибавляться член ряда столько раз, сколько задано количество повторений, в нашем примере 10 раз.
END;
Y 1:=3*(SQRT(y)); итоговая функция
…
Оператор цикла While и Repeat для решения задач с неизвестным числом повторений, также важно запомнить, что оператор цикла While (до того как), а оператор цикла Repeat (после того как).
Массивы
Одномерные массивы.
Необходимость в массивах возникает всякий раз, когда при решении задачи приходится иметь дело с большим, но конечным количеством однотипных упорядоченных данных.
Массив – это упорядоченный набор фиксированного количества некоторых значений.
Формат описания массива
<имя массива>:array [<количество>] of <тип компонента>
<имя массива> - идентификатор массива
Array – массив
<количество> - количество элементов в массиве
Of - для
<тип переменных> - описание типа переменных в массиве.
Примеры:
Описание массива состоящего из 100 элементов:
A:array [1..100] of real;
Описание массива по годам 1901-2000:
Vek: array [1901..2000] of integer.
Для использования случайных чисел в Турбо Паскале используются операторы random:real - генерирует случайные числа в диапазоне 0...0.99.
random(i:word):word - генерирует случайные числа в диапазоне 0...1.
randomize - изменение базы генератора случайных чисел.
