Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Полная форма условного оператора If

Поиск

 

If < Логическое выражение > Then < Оператор-1 > Else < Оператор-2 >;

 

Блок – схема

 

Пример

 

 

If A>0 Then C:=A

Else C:= Abs(A);

Сокращенная форма условного оператора If

 

If < Логическое выражение > Then < Оператор-1 >;

 

Блок – схема

 

 

Пример

 

 

C:= A;

If A>0 Then C:=Abs(A);

 


Задача 1

Ввести число. Если это число положительное, то на экран вывести сообщение "Положительное число". Если это число отрицательное, то на экран вывести сообщение "Отрицательное число".

 

 

Исходные данные: А

 

Блок-схема


Да Нет

Program Trial_1;

Var A: Integer;

Begin

Write ('Введите число'); ReadLn (A);

If A >= 0 Then WriteLn('Положительное число')

Else WriteLn('Отрицательное число')

End.

 

 

Задача 2


 

Исходные данные: X

 

Блок-схема

 

Да Нет

 

Program Trial_2;

Var X: Integer; Y: Real;

Begin

Write ('Введите число'); ReadLn (X);

If X > 5 Then Y:=1/(X-5)

Else Y:= 5*X;

WriteLn (Y)

End.

 

Циклические вычислительные процессы

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

Многократно повторяемые участки вычислений называются циклами, а переменные, изменяющиеся в цикле, - переменными цикла (параметрами).

 

Пример

 

Вычислить значение функции Y = aN, где а - действительное число с натуральным показателем.

 

Y = a * a * a * a * a * … * a

 
 

 


N

Алгоритм циклической структуры

  1. Подготовка цикла – задание начальных значений переменным цикла перед первым его выполнением.
  2. Тело цикла – действия, повторяемые в цикле.
  3. Модификация переменных цикла перед каждым новым его повторением.
  4. Управление циклом – проверка условия продолжения (или окончания) цикла и переход на начало тела цикла, если выполняется условие продолжения цикла (или выход из цикла по его окончанию).

 

Блок - схема циклического процесса с предусловием

 

Блок - схема циклического процесса с предусловием

       
   
 
 

 

 


 

 

Операторы повтора

 

1. В языке Pascal различают три вида операторов цикла:

 

           
     

 


2. Выражение, управляющее повторениями, должно иметь булевский тип.

3. В случае если число повторений оператора (составного оператора) заранее неизвестно, а задано лишь условие его повторения (или окончания) используются операторы while, repeat.

4. Оператор for используется, если число повторений заранее известно.

 

Оператор цикла с параметром (For)

Число повторений заранее известно.

Предусматривает повторное выполнение <оператора> с одновременным изменением по правилу арифметической прогрессии значения, присваемого управляющей переменной.

< переменная > - параметр цикла; является переменной порядкового типа;

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

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

< оператор > - выполняемый оператор.

 

Порядок выполнения оператора For – to

 

 


 

Правила организации цикла:

1. Параметр цикла - < переменная >, начальное - < выражение-1 >, конечное - < выражение-2 > значения должны быть одинакового типа, их тип может быть любым скалярным типов, кроме вещественного.

2. Цикл не выполняется вообще, если:

начальное значение больше, чем конечное для For – to

начальное значение меньше, чем конечное для For - downto.

3. По окончании цикла значение переменной цикла не определено и не может использоваться в дальнейших вычислениях.

4. После ключевого слова Do может стоять только один оператор.

Запрещается

 

1. Изменять переменную цикла.

 

For I:= 1 to N do

Begin

Y:= Y * A;

I:= I + 2

end;

2. Входить в цикл с помощью оператора Goto, так как в этом случае начальное и конечное значения параметра цикла не будет определено.

 

goto METKA1;

For I:= 1 to N do

Begin

METKA1: Y:= Y * A;

I:= I + 2

end;

Пример 1

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

Program MULTI_1; Var A,Y:Real; I,N: Integer; Begin Write(’Введите число А-’); Readln (A); Write(’Введите степень числа А - ’); Readln (N); Y:= 1; For I:= 1 to N do Y:= Y * A; Write (’Результат -’, Y) End.
Program MULTI_2; Var A,Y:Real; I,N: Integer; Begin Write(’Введите число А-’); Readln (A); Write(’Введите степень числа А - ’); Readln (N); Y:= 1; For I:= N downto 1 do Y:= Y * A; Write (’Результат -’, Y) End.


Поделиться:


Последнее изменение этой страницы: 2016-08-12; просмотров: 205; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.129.241 (0.006 с.)