Оператор условного, безусловного перехода
Условные операторы:
1 If
· Неполная форма: if выражение then st;
· Полная форма: if выражение then st1
Else st 2;
Блок схема:
St – это оператор
Если логическое выражение принимает значение True, то выполняется st (в 1-ом случае) и st1 (во 2-ом случ.), если же логическое выражение принимает значение False, то программа продолжает выполняться далее без выполнения каких-либо действий (в 1-ом случ.), а во 2-ом случае выполняется st2.
2 Условный оператор выбора САSE
Оператор Саse используется при большом кол-ве условий, он позволяет выбрать одно из нескольких действий в зависимости от значения переключателя.
Case Переключатель of Блок-схема:
Список констант 1: Оператор 1;
Список констант 2: оператор 2;
…………………………………….
Список констант N: Оператор N;
Else Оператор Е;
End.
Где, переключатель – переменная или выражение порядкового типа, список констант – константы порядковых типов, оператор – любой оператор Pascal (Case, if), составной оператор Begin….end; при неполной форме оператора Case ветвь Else отсутствует.
Оператор безусловного перехода:
GoTo Метка;
Осуществляется переход к инструкции, перед которой указана метка, объявленная в разделе label. (метка м.б.от1 до 99999)
Label метка 1, 45; Begin метка 1:B:=1; 45:A:=10; goto метка 1; …
32. Арифметические и логические операции.
В основе вычислительной техники лежит логическая система Джорджа Буля. Правила этой системы применимы к самым разнообразным объектам и их группам. Результатом формального расчёта логического выражения явл-ся одно из двух логических значений: истина или ложь. Четыре основные операции, которые были использованы при создании электронных вычислительных машин: И (пересечение), ИЛИ (объединение), НЕ (отрицание) и ИСКЛЮЧАЮЩЕЕ ИЛИ-лежат в основе работы всех видов процессоров современных компьютеров. Логическая операция НЕ ставиться перед логическим выражением. Инвертирует (меняет на противоположное) значение логического выражения. Операция И объединяет два логических выражения. Результат получившегося выражения будет истинным, если истинны оба выражения, составляющие данное выражения. В противном случае выражение ложно. Операция ИЛИ объединяет два логических выражения. Результат получившегося выражения будет истинным, если хотя бы одно истинным является хотя бы одно из выражений. В противном случае выражение ложно. Операция ИСКЛЮЧАЮЩЕЕ ИЛИ объединяет два логических выражения. Результат будет истинным, если значения этих выражений различны. В противном случае выражение ложно.В языке Турбо Паскаль имеются логические операции, применяемые к переменным логического типа. Это операции not, and, or и хor. Логические операции, операции отношения и арифметические операции часто встречаются в одном выражении. При этом отношения, стоящие слева и справа от знака логической операции, должны быть заключены в скобки, поскольку логические операции имеют более высокий приоритет. Вообще принят следующий приоритет операций:
not
and, *, /, div, mod
or, +, -
операции отношения..
Логическую операцию and еще называют логическим умножением, а логическую операцию or - логическим сложением. Кроме того, порядок выполнения операций может изменяться скобками. Например, в логическом выражении расставим порядок действиййA or B and not (A or B)Сначала выполняется заключенная в скобки операция or, а затем операции not, and, or. Если подставить вместо переменных А и В значения True и False, то, используя уже рассмотренный порядок действий, получим значение всего выражения равное True.
A | B | Not A | A and B | A or B | A xor B |
True | True | False | True | True | False |
True | False | False | False | True | True |
False | True | True | False | True | True |
False | False | True | False | False | False |
Арифметические операции:
(+)(-) (*)- для целых и веществ (/)-для веществ.div-частное двух целых чисел без остатка(целое число) mod-остаток от деления целых чисел (целое число) exp(x) sqr(x) квадрат sqrt(x) корень
Sin(x) cos(x) round(x)-округление по правилам до целого числа trune(x)-отбрасывание десятичной части add(x) определяет чётность числа (true не чётное false-чётное) dec(x,[i]) увелич х на I
Inc(x,[i]) уменьшает х на i. Операции отношения: >, <, =, <=,>=,<>, in-пренадлежность множеству.приоритет: вычисление функций; операции в скобках, логические операции, возведение в степень…
33. .Структура программы
[Заголовок программы] program_имя
[Раздел используемых модулей] uses_имя1, имя2
Раздел описаний:
1.раздел объявления меток;
2.раздел объявления констант;
3.раздел объявления типов;
4.раздел объявления переменных;
5.раздел объявления процедур и функций;
6.раздел оператооров.
Структура программы в общем виде выглядит следующим образом:
Program_имя; (имя программы)
Uses имя1; (имена подключаемых библиотек)
label
{ объявления меток }
const
{ объявления констант )
type
{ объявления типов }
var
{ объявления переменных }
{ объявления процедур и функций программиста }
begin
{ инструкции основной программы}
end.
+ программа может содержать комментарии - {надпись между такими скобками}
Пример программы:
Program triang;{вычисление площади треугольника}
Var a,b,c,p,s:real;
Begin
read(a,b,c);
writeln(a,b,c);
p=(a+b+c)/2;
s=Sqrt((p-a)*(p-b)*(p-c)*p);
writeln(‘s=’,s:8:3);
end.
Оператор выбора «case».
Оператор выбора case
Общий вид этого оператора:
case <селектор> of < альтернатива 1 > : < оператор 1>;
< альтернатива 2>:< оператор 2 >;
< альтернатива N >: < оператор N > else < оператор части Else> end;
Case и of — зарезервированные слова, которые являются отличительным признаком оператора множественного ветвления. Селектор — это переменная или выражение порядкового типа. В зависимости от значения данного выражения или переменной происходит ветвление программы. После заголовка оператора идет перечисление различных альтернатив, по которым может выполняться программа. Альтернативы отделяются друг от друга точкой с запятой. Используемая в операторе case метка может состоять из констант и диапазонов. Диапазоны значений в Паскале — это два крайних значения, написанные через двоеточие. Такая запись эквивалентна перечислению всех целых чисел в данном диапазоне.
Часть оператора case, состоящая из слова else и последнего альтернативного варианта, является необязательной, она выполняется в том случае, если вычисленный в программе селектор не соответствует ни одной из перечисленных выше альтернатив. Если эта часть оператора case отсутствует, а селектор не подходит ни под одну из альтернатив, то оператор case не выполнит никаких действий. Завершается оператор case обязательным словом end;
Пример использования оператора case:
program number; { Определение времени года по номеру месяца}
var
month: integer; {номер месяца}
begin
write (’Введите номер месяца:’);
readln (month);
writeln (‘Время года:’);
case month of
1, 2, 12: writeln (’зима’);
3..5: writeln (’весна’);
6..8: writeln (’лето’);
9..11: writeln (’осень’);
else writeln (’число должно быть от 1 до 12’);
end;
end.
35.=17.