Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
учебн.пособ. для з.о..doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
440 Кб
Скачать
☆

Программа

PROGRAM E31;

VAR N:INTEGER; {номер дня недели}

BEGIN

WRITELN('введите номер дня недели');

READ(N);

CASE N OF

1: WRITELN('понедельник - monday');

2: WRITELN('вторник - tuesday');

3: WRITELN('среда - wednesday');

4: WRITELN('четверг - thursday');

5: WRITELN('пятница - friday');

6: WRITELN('суббота - saturday');

7: WRITELN('воскресенье - sunday');

END

END.

Результат выполнения программы:

введите номер дня недели:

5

пятница - friday

5.8 Пример использования оператора цикла for

Составить программу вычисления K первых членов арифметической прогрессии, заданных рекуррентной формулой An+1 = An + 2, где A1=5, K=6.

Введем обозначения: X - член арифметической прогрессии An, K - количество членов прогрессии, N - параметр цикла.

Исходными данными задачи являются: значение первого члена арифметической прогрессии X и количество членов прогрессии - переменная K. Выходные данные - вычисленные значения членов арифметической прогрессии, начиная со второго и до последнего. Члены арифметической прогрессии вычисляются по рекуррентной формуле суммы X=X+2 в разделе операторов программы. Вычисление суммы повторяется оператором цикла FOR до тех пор, пока переменная цикла N не станет больше K.

Схема алгоритма решения задачи представлена на рис.4.

Программа:

PROGRAM PRIM1

{ раздел описания переменных }

VAR N, {параметр цикла}

K:INTEGER; {количество членов прогрессии}

X:REAL; {член прогрессии}

{раздел операторов}

BEGIN

X:=5.0; {первый член прогрессии}

K:=6;

WRITELN(' ':8,'Члены прогрессии');

WRITELN(' ':20,'X=',X:6:2);

FOR N:=2 TO K DO {начало цикла}

BEGIN

X:=X+2; {вычисление членов прогрессии}

WRITELN(' ':20,'X=',X:6:2)

END {конец цикла}

END.

Результат выполнения программы:

Члены прогрессии

X= 5.00

X= 7.00

X= 9.00

X=11.00

X=13.00

X=15.00

Пояснение к программе. Операторы вычисления переменной и вывода ее на экран дисплея образуют составной оператор, который повторяется оператором цикла FOR до тех пор, пока значение переменной N не станет больше K. После этого управление передается на оператор END. Программа заканчивает работу.

5.9 Пример использования оператора цикла while

Составить программу вычисления произведения m членов арифметической прогрессии, если известны значения первого члена a и разности арифметической прогрессии h, где m=50, a1=2.14, h=1.13.

Введем обозначения: A - член арифметической прогрессии a; H- разность арифметической прогрессии h; M - количество членов арифметической прогрессии m; Р - произведение членов арифметической прогрессии; I - переменная цикла. Исходными данными для решения задачи являются: первый член арифметической прогрессии - переменная A; разность арифметической прогрессии - константа H; количество членов арифметической прогрессии - переменная M.

PROGRAM PRIM2;

{раздел описания констант}

CONST

H=1.13;

{раздел описания переменных}

VAR

I, {параметр цикла}

M:INTEGER; {количество членов прогрессии}

A, {член прогрессии}

P:REAL; {произведение членов прогрессии}

BEGIN

WRITELN('Введите M=20, A=2.14');

READLN(M,A);

I:=0;

P:=1.0;

WHILE I<=M DO {начало цикла}

BEGIN

I:=I+1;

P:=P*A;

A:=A+H;

END; {конец цикла}

WRITELN(' ':20,'Произведение P=',P);

END.

Результат выполнения программы:

Введите M=20, A=2.14

20 2.14

Произведение P=1.095992E+22

Пояснение к программе. Операторы вычисления переменных A, P и I организованы в составной оператор и вместе с оператором цикла WHILE образуют тело цикла. Вычисление этих переменных повторяется, пока выполняется условие I<=M. В противном случае управление из тела цикла передается на оператор вывода WRITELN и программа заканчивает работу.