Мета роботи: засвоїти методику програмування однієї з базових структур алгоритмів ( розгалуженої; засвоїти запис констант, змінних та операторів.
ЗАВДАННЯ
Дано умову Р і дві функції від двох змінних Z(x,y) та W(x,y).
Необхідно написати та перевірити блок-схему обчислення значення змінної Q за таким алгоритмом: якщо умова Р виконується, то Q=Z(x,y) інакше Q=W(x,y). Вивести на екран відповідне повідомлення:”Умова Р (не) виконується” та значення змінної Q. За розробленою блок-схемою написати та виконати програму. Перед розробкою блок-схеми виконати спрощення заданих виразів та введення проміжних змінних для зменшення кількості математичних операцій. Спосіб введення даних ( з клавіатури, початкове присвоєння змінним, опис констант, ( обирається студентом. Варіанти умов до лабораторної роботи наведено в табл.2.3, а варіанти функцій двох змінних наведено в табл.1.1 лабораторної роботи №1.
Задано вирази: Z(x,y)= та W(x,y)= ;
Умова: –10<x(2 ;–2<y<1;
1.ПОСТАНОВКА ЗАДАЧІ.
Проаналізуємо дані.
Вхідні дані: змінні x,y( дійсні.
Вихідні дані: змінні promX, promY ( дійсні; повідомлення t1: «Умова», повідомлення t2: «виконується» .
Вираз Z(x,y)= можна скоротити оскільки tg(2*y+1)=sin(2*y+1)/cos(2*y+1); тоді Z(x,y)= (1+exp(x))/ cos(2*y+1);
Знаменник виразів Z(x,y) та W(x,y) не повинен бути рівним нулеві:
2*y+1≠0 тоді у≠-0,5 , тому використаємо оператор repeat при вводі змінної у.
promX, promY проміжні змінні, які призначені для зменшення кількості математичних операцій при обчисленні змінної Q.
2.РОЗРОБКА СТРУКТУРИ ДАНИХ.
№п(п
Позначення
Ім’я
Тип
Призначення, опис
1
x
x
дійсна
Аргумент функції, вхідна
2
y
y
дійсна
Аргумент функції, вхідна
3
Q
Q
дійсна
Значення функції, вихідна
4
(
t1
символьна
Повідомлення: “Умова ”
5
(
t2
символьна
Повідомлення: “виконується”
6
promX
promX
дійсна
Проміжна змінна призначена для зменшення кількості математичних операцій
7
promY
promY
дійсна
Проміжна змінна призначена для зменшення кількості математичних операцій
3.РОЗРОБКА БЛОК-СХЕМИ АЛГОРИТМУ.
H
T
Т
4.ЗАПИС ТЕКСТУ ПРОГРАМИ.
program Project1;
var x,y,q,promX,promY:real;
t1,t2:string;
begin
writeln('vvedit x');
readln(x);
repeat
writeln('vvedit y');
readln(y);
until y<>-0.5;
t1:='ymova';t2:='vukonyjetcja';
promX:=1+exp(x); promY:=2*y+1;
if (-10<x) and (x<=2)and (y<1)and (-2<y) then
begin
q:=promX/cos(promY);
writeln(t1,' ',t2); end else
begin
q:= sqr(promX)*(exp(promY)+exp(-promY))*0.5/promY;
writeln(t1,' ne ',t2); end;
write('q=',q:8:3); readln;
end.
5.ТЕСТУВАННЯ ТА НАЛАГОДЖЕННЯ.
Висновок:я засвоїв методику програмування розгалуженої структури алгоритмів. Написав програму з розгалуженням. Ознайомився з функціями, засвоїв запис констант, змінних та операторів.
Міністерство освіти і науки україни
Національний університет «Львівська політехніка»
Кафедра теоретичної радіотехніки та радіовимірювань
ЗВІТ З ЛАБОРАТОРНОЇ РОБОТИ №2
НА ТЕМУ «ПРОГРАМУВАННЯ АЛГОРИТМІВ З РОЗГАЛУЖЕННЯМ»
з дисципліни «Інформатика та обчислювальна техніка»
Варіант 3
Підготував:
студент
групи РТ-11
Іванюк Руслан
Прийняв:
Нестор Н. І.
Львів 2010р.