Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
информатика, билеты.docx
Скачиваний:
5
Добавлен:
16.04.2019
Размер:
131.51 Кб
Скачать

Вопрос 5 Формат и правила выполнения оператора присваивания. Оператор присваивания

Первый оператор, с которым мы познакомимся,- оператор присваивания.

Оператор присваивания - основной оператор любого языка программирования. Общая форма записи оператора:

  имя величины := выражение

Например, V:=A; или V:=A+1;

При помощи оператора присваивания переменной могут присваиваться константы и выражения, значения переменных любого типа.

Как только в программе встречается переменная, для неё в памяти отводится место. Оператор присваивания помещает значение выражения в место, отведённое переменной.

Если в процессе выполнения программы встречается переприсваивание (т.е. та же самая переменная принимает другое значение), то старое значение переменной стирается, на свободное место записывается новое значение. Команда присваивания позволяет лучше понять смысл слова переменная (т.е. меняющая своё значение по ходу программы).

Выражение может быть арифметическим, логическим или литерным. Важно, чтобы тип величины был согласован с видом выражения.

Вопрос 6 Понятие и применение составного оператора.

Если необходимо, чтобы группа операторов рассматривалась транслятором, как один оператор, эту группу операторов заключают в операторные скобки BEGIN и END. Такой оператор называется составным оператором. Составной оператор может быть использован в любом месте программы, где разрешен простой оператор, но требуется выполнение группы операторов.

Вопрос 7

Формат и правила выполнения условного оператора IF.

Условный оператор используется для программирования развилки, если условие сформулировано как логическое выражение.

IF <логическое выражение> THEN<оператор 1>

[ ELSE <оператор 2>] ;

<следующий оператор >;

Оператор выполняется таким образом: если результат вычисления логического выражения TRUE, то выполняется <оператор 1>, затем <следующий оператор >; если – FALSE, то выполняется <оператор 2>, затем <следующий оператор>. Операторы 1 и 2 могут быть простым или составным оператором. Если часть оператора, начинающаяся ELSE, отсутствует, то при логическом выражении равным FALSE, будет выполняться <следующий оператор>. При вложенности условных операторов ELSE всегда относится к ближайшему предшествующему IF. Следует избегать большой глубины вложенности условных операторов, так как при этом теряется наглядность и возможно появление ошибок.

Например,

IF A > 0 THEN P := P + 1

ELSE

IF A < 0 THEN O := O + 1

ELSE N := N + 1 ; …

IF A > 0 THEN

BEGIN

S := S+ A ; K := K + 1

END ;…

Вопрос 8

Оператор цикла с известным числом повторений FOR: формат, порядок выполнения.

Оператор цикла типа арифметической прогрессии используется, если заранее известно количество повторений цикла и шаг изменения параметра цикла +1 или –1.

FOR<параметр цикла>:=<выраж.1> TO <выраж.2> DO

DOWNTO

< оператор > ;

< параметр цикла > - это переменная цикла любого порядкового типа (целого, символьного, перечисляемого, интервального);

TO – шаг изменения параметра цикла +1;

28

DOWNTO - шаг изменения параметра цикла -1;

< выражение 1> - начальное значение параметра цикла, выражение того же типа, что и параметр цикла;

< выражение 2> -конечное значение параметра цикла, выражение того же типа, что и параметр цикла;

< оператор>- тело цикла - простой или составной оператор.

При выполнении оператора FOR выполняются следующие действия:

вычисляется < выражение 1> , которое присваивается параметру цикла;

проверяется условие окончания цикла: <параметр цикла> больше <выражения 2> при использовании конструкции TO и <параметр цикла> меньше <выражения 2> при использовании конструкции DOWNTO;

выполняется тело цикла;

наращивается (TO) или уменьшается (DOWNTO) на единицу параметр цикла;

все этапы, кроме первого, циклически повторяются.

При использовании оператора необходимо помнить:

o Внутри цикла FOR нельзя изменять начальное, текущее или конечное значения параметра цикла.

o Если в цикле с шагом +1 начальное значение больше конечного, то цикл не выполнится ни разу. Аналогично для шага -1, если начальное значение меньше конечного.

o После завершения цикла значение параметр цикла считается неопределенным, за исключением тех случаев, когда выход из цикла осуществляется оператором GOTO или с помощью процедуры BREAK.

o Телом цикла может быть другой оператор цикла.

Например, для того, чтобы вычислить значение факториала F=N! можно воспользоваться следующими операторами:

a) … F:=1; b) … F:=1;

FOR I:=1 TO N DO FOR I:=N DOWNTO 1 DO

F:=F*I; … F:=F*I; …

В следующем примере цикл выполняется 26 раз и SIM принимает значения всех латинских букв от ’A’ до ‘Z’.

FOR SIM:=’A’ TO ‘Z’ DO

WRITELN( SIM); • • • • •

29

Если телом цикла является другой цикл, то циклы называются вложенными или сложными. Цикл, содержащий в себе другой цикл, называют внешним. Цикл, содержащийся внутри другого цикла, называется внутренним. Внутренний и внешний циклы могут быть любыми из трех видов: FOR, WHILE или REPEAT. При построении вложенных циклов необходимо, чтобы все операторы внутреннего цикла полностью находились в теле внешнего цикла. Возможная глубина вложенности циклов ограничивается объемом памяти компьютера. Вначале выполняется самый внутренний цикл при фиксированных значениях параметров циклов с меньшим уровнем вложенности, затем изменяется параметр цикла следующего (за внутренним) уровня и снова выполняется самый внутренний цикл и т.д.

Пример. Вычислить значение Y , определяемое по формуле ijAMjNiYΠΣ===11

PROGRAM SP;

CONST N=10;

M=15;

VAR A: ARRAY [1..N,1..M] OF REAL;

I,J: INTEGER;

P,Y: REAL;

BEGIN

FOR I:=1 TO N DO

FOR J:=1 TO M DO

READLN(A[I,J]);

Y:=0;

FOR I:=1 TO N DO

BEGIN

P:=1;

FOR J:=1 TO M DO

P:=P*A[I,J];

Y:=Y+P

END;

WRITELN(‘Y=’,Y)

END.