Міністерство загальної та професійної освіти p>
Російської Федерації p>
Алтайський державний технічний університет ім. І.І. Ползунова p>
Контрольна робота p>
з дисципліни «Інформатика та обчислювальна техніка» p>
Варіант 0 p>
Виконав: студент гр. 9М-91 заочно. ф-ту p>
Перевірив: p>
Ільїн Валентин Іванович p>
Барнаул 1999 p>
Завдання. P>
Обчислити добуток елементів масиву, що перевищують заданий число С, то є yk> C, для х? [a, b] і змінюється з кроком h. p>
1 + x +? x, де x <5 yk =? 2 - cosx, де 5? x? 8 ln (1 + x), де x> 8
Етап 1. Розташування.
X - значення аргументу x;
Y - значення yk;
C - задане число;
А - початкове значення аргументу x;
В - кінцеве значення аргументу x;
Н - крок зміни аргументу x;
Р - твір елементів yk масиву. P>
Етап 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 - кінцеве значення аргументу х. p>
Етап 3. Структурна схема.
Структурна схема представлена на мал.1. P>
Малюнок 1. P>
Етап 4. Текст програми. P>
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_X8_THEN_Y: = LN (1 + X); p>
ELSE_Y: = SQRT (2-COS (X));
IF_Y> C_THEN_P: = P * Y; p>
X: = X + H; p>
END;
WRITE ( 'Твір елеменьов масиву одно', P: 8:2);
END. P>
Пояснення до програми.
Коли після запуску програми на екрані з'явиться текст:
Введіть значення a та b,потрібно на клавіатурі вибрати конкретні числа, які будуть присвоєні цимзмінним.
Потім з'явиться повідомлення:
Введіть крок Н і число С.
Необхідно ввести також конкретні значення цих мінливих. Після цьогопрограма почне виконання обчислювального процесу. У результаті роботипрограми на екрані з'явиться текст:
Твір елеменьов масиву одно число. P>
Лабораторні роботи. P>
Варіант 10. P>
Тема 1. Лінійний обчислювальний процес. P>
Завдання 1. Скласти програму для обчислення значення х і провести обчислення на комп'ютері. P>
p>
PROGRAM_LR1;
VAR_A, B, D, P, G: REAL;
BEGIN
WRITE ( 'Введіть через пробіл значення a, b, d, p, g');
READ (A, B, D, P, G);
Х: = A * SIN (SQR (P)) + B * SQR (COS (P))/(A * D * (SQR (P) + SQR (G )));< br> WRITE ( 'X =', X: 7:2);
END. P>
Тема 2. Розгалужуються обчислювальний процес. P>
Завдання 2. Скласти структурну схему і написати програму обчислення значення у (х) для будь-якого значення аргументу х. sin2? x + cos? x,, якщо x> 5 y = x3 + x2 +1, якщо x? 1 p>
PROGRAM_LR2;
VAR_X, Y: REAL;
BEGIN
WRITELN ( 'Введіть х');
READLN (X);
IF_X> 5_THEN_Y: = SQR (SIN (SQRT (X))) + COS (SQRT (X )); p >
WRITE ( 'Y =', Y: 8:2); p>
ELSE_IF_XB;
END. P>
Завдання 4. Скласти структурну схему і програму для обчислення значення функції: p>
PROGRAM_LR4;
VAR_K, M, N: INTEGER; p>
S, P: REAL;
BEGIN
WRITELN ( 'Введіть m і n');
READLN (M, N);
S: = 0;
FOR_K: = M_TO_N_DO p>
BEGIN p >
P: = (SQR (K) +5)/(SQR (K) * K + K); p>
S: = S + P; p>
END;
WRITE ( 'S =', S: 10:4);
END. P>
Тема 4. Програмування алгоритмів циклічної структури з використанням масивів. P>
Завдання 5. Скласти структурну схему і програму з використанням одновимірних масивів. P>
У заданої послідовності x1, x2, x3 ,..., xn від'ємні числа замінити їх на квадрати. P>
PROGRAM_LR5;
CONST_N1 = 100;
VAR_K, N: INTEGER; p>
X: ARRAY [1 .. N1] _OF_REAL;
BEGIN
WRITE ( 'Введіть кількість чисел у послідовності n =');< br> READLN (N);
WRITELN (' Введіть елементи послідовності ');
FOR_K: = 1_TO_N_DO p>
BEGIN p>
READ (X [K ]); p>
IF_X [K] 5 p>
p>
Висновок «Y - не визначено» p>
Кінець p>
Введення x p>
початок p>
p>
p>
Висновок x, y p>
x> b p>
x = x + h p>
Кінець p>
Введення a, b, h p>
початок p>
p>
p>
p>
p>
p>
p>
p>
S = S + P p>
k = m, n, 1 p>
Висновок S p>
S = 0 p>
Кінець p>
Введення m, n p>
початок p>
xk? 0 p>
Введення xk p>
xk = xk2 p>
k = 1, n, 1 p>
Висновок S p>
Кінець p>
Введення n p>
початок p>
aij = IaijI p>
y = i/(? i + j) p>
j = 1, n, 1 p>
i = j p>
aij = i - j + 1 p>
i = 1, m, 1 p>
Висновок aij p>
Введення m, n p>
початок p>
Кінець p>
p>
Кінець p>
Висновок P p>
P = P * y p>
y x? 0 p>
p>
p>
x> 8 p>
p>
p>
x <5
x? b p>
x = x + h p>
P = 1 p>
x = a p>
Введення a, b, C, h p>
початок p>
p>