Шпаргалка: Информатика и ВТ

Задание.

Вычислить произведение элементов массива, превышающих заданное число С, то есть yk > C, для х Î[a,b] и изменяющегося с шагом h.

yk =1 + x + Ö x, где x < 5

yk =Ö 2 – cosx, где 5 £ x £ 8

yk =ln (1+x), где x > 8

Этап 1. Обозначения.

X – значение аргумента x;

Y - значение yk ;

C – заданное число;

А – начальное значение аргумента x;

В – конечное значение аргумента x;

Н – шаг изменения аргумента x;

Р – произведение элементов yk массива.

Этап 2. Обсуждение алгоритма.

Задается начальное значение аргумента x = a и начальное значение произведения элементов массива Р = 1. Так как, число повторений цикла заранее неизвестно, организуется циклический (итерационный) вычислительный процесс. Внутри цикла осуществляется проверка значений х, и в зависимости от того x < 5, или 5 £ x £ 8, или x > 8, выбирается формула для вычисления значений yk . Кроме того, если выполняется условие x < 5, то проверяется еще одно условие х ³ 0 (так как подкоренное выражение при вычислении yk не может быть отрицательным). В случае выполнения этого условия, значению yk присваивается значение yk = 1 (для того, чтобы при вычислении не изменилось значение произведения Р, а процесс перешел к вычислению следующего значения yk при следующем значении х). Затем, на основании полученного значения yk проверяется условие yk > С. Если оно выполняется, то значение произведения Р умножается на полученное значение yk . После этого, аргумент х увеличивается на шаг h. Цикл выполняется до тех пор, пока текущее значение х не превысит значения b – конечное значение аргумента х.

Этап 3. Текст программы.

PROGRAM_KR0;

VAR_A,B,C,H,P,X,Y:REAL;

BEGIN

WRITELN(‘Введите значения a и b’);

READLN(A,B);

WRITELN(‘Введите шаг Н и число С’);

READLN(H,C);

X:=A;

P:=1;

WHILE_X<=B_DO

BEGIN

IF_X<5_THEN_IF_X>=0_THEN_Y:=1+X+SQRT(X);

ELSE_Y:=1;

--> ЧИТАТЬ ПОЛНОСТЬЮ <--

К-во Просмотров: 264
Бесплатно скачать Шпаргалка: Информатика и ВТ