Writeln('болезнь'); 10: writeln('дети')

else writeln('неудача') end;

writeln('Нажми Enter'); readln;

END.

Здесь функция Random(x) генерирует случайное число, с равномерной плотностью распределения на заданном интервале. Для инициализации распределения в начале программы необходимо вызвать процедуру Randomize.

Практическое задание:

1) Назначить дежурного в классе из списка 10 учеников с вероятностью 1/15, в остальных случаях дежурит учитель.

2) Выбрать место отдыха в отпуске из списка 10 мест, предлагаемых туристическим агентством с вероятностью 1/30 , в остальных случаях вы отдыхаете дома.

3) Вывести на экран сообщение в зависимости от введенного значения оценки ( по десятибалльной системе ), например: 1. . 2: плохо, 3. . 5: удовлетворительно, и т. д. , иначе - неправильный ввод данных.

4) Вывести на экран сообщение в зависимости от введенного значения температуры воздуха ( от -50 до +50 0 С ), например: -50. . -20: очень холодно, -19. . -10: холодно, и т. д. , иначе - неправильный ввод данных.

Контрольные вопросы

1. Как записываются условные операторы в Паскале?

2. Как выглядят вложенные условные операторы?

3. Каково назначение оператора выбора?

4. Что такое селектор?

5. Как работает оператор выбора?

Операторы цикла

Ход работы:

- оператор цикла с параметром;

- записи «цикла пока» и «цикла-до» в Паскале;

- примеры использования циклов в программах.

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

Три различных оператора.

1. Оператор цикла с предусловием (while)

2. Оператор цикла с постусловием (repeat)

3. Оператор цикла с параметром (for)

Оператор for

Writeln('болезнь'); 10: writeln('дети') - student2.ru

Оператор for задает определенное число повторений и имеет следующий формат:

for <параметр цикла>:= < N1> to <N2> do <тело цикла>;

For i:= N1 To N2 Do "оператор";

i - параметр цикла,

N1, N2 – нач. и конеч. значения параметра цикла i.

Слово to означает - что параметр цикла меняется от начального до конеч­ного значений в порядке возрастания.

При каждом повторении параметр полу­чает приращение +1.

Чтобы параметр цикла убывал, нужно вместо to в записи оператора подставить слово downto(отвечает приращению -1).

Часть оператора от слова for до слова do называется заголов­ком цикла.

Тело цикла может быть представлено как простым, так и составным оператором (заключается в слова begin... end).

Оператор тела цикла выполняется до тех пор, пока не будут перебраны все значения параметра цикла.

Два направления изменения параметра цикла:

1. Возрастание

2. Убы­вание.

Параметр цикла необходимо описать в разделе описаний программы (или текущего блока) - он должен иметь дискретный тип.

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

Пример действия оператора for:
Вычисление зна­чений функции у = q-w

при определенных значениях X. Считаем, что аргумент X «пробегает» 10 значений, которые расположены в интервале от XI до Х2.

Начальное и конечное значения XI и Х2 задаются пользователем, а промежуточные значения X программа находит по формуле:

Х = XI + (Х2-Х1)*(1-1)/9

где I - параметр цикла.

При 1=1 аргумент Х равен XI,

При 1=10 имеем Х=Х2.

В программе используем встроенные функции Ехр (х) и Abs (x), которые выполняют вычисление экспоненциальной функции и нахождение модуля соответственно.

Программа:

Writeln('болезнь'); 10: writeln('дети') - student2.ru

В разделе описания переменных указаны параметр цикла I (тип integer), a также переменные аргумента Х и функции Y, границы интервала XI и Х2 (тип real).

В начале выполнения программы на экране появляется надпись «Значения функции Ехр (-Abs (х) )», а затем в процессе повторений тела цикла выводится столбик значений Y.

Пример №1:ввести с клавиатуры произвольное целое число N . Вычислить сумму всех целых чисел от 1 до N.

Vari, n, s: integer;

Begin

Write(‘N=’); Readin (n); (ввести N)

s:=0; (начальное значение суммы)

for i:=1 to n do s:=s+1; (цикл подсчета суммы)

writeln(‘сумма=’,s)

End.

Пример №2:разработать программу расчета функции

Writeln('болезнь'); 10: writeln('дети') - student2.ru

Исходные данные: n – количество слагаемых;

Входные данные: y – значение функции.

Program example;

Uses CRT;

Var n, i, y, SL: integer;

Begin

CLRSCR;

Write (‘введите n=>’);

Readin (n);

y:=0;

for i:=1 to n do

Begin

SL:=sqr(i);

end;

write (‘y:=’,y);

readin;

End.

Пример №3:разработать программу расчета объема

Writeln('болезнь'); 10: writeln('дети') - student2.ru

Program 25;

Uses CRT;

Const

Pi=3.14; h=0.05;

Var i: integer;

R, V: real;

Begin

CLRSCR;

V:=0; R:=9.95;

for i:=1 to 12 do

Begin

V:=(V+4*Pi*R*R*R)/3;

R:=R+h;

end;

writeln (‘объем =’, V);

readin;

End.

Наши рекомендации