Задача №96 (1).
Умова: Дано значення цілих величин x
та y . Знайти:
Program Example_96_1;
Uses crt;
Var x,y,Max,Min,Rezultat:integer;
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть значення x та y: ’);
Readln(x,y);
If x{Знаходження максимуму та мінімуму}
Then
Begin
Max:=y;
Min:=x;
end
Else
Begin
Max:=x;
Min:=y;
End;
Rezultat:=sqr(Max)-sqr(Min);
Writeln(‘Резудьтат обчислень: ’,Rezultat:8:2);
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.
Задача №97(2).
Умова: Дано значення дійсних величин
a, b, c. Знайти:
Program Example_97_2;
Uses crt;
Var a,b,c : real;
Rez1,Rez2,Min : real; {Rez1, Rez2 – проміжні
обчислення; Min – результат виконання програми}
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть числа a,b,c: ’);
Readln(a,b,c);
Rez1:=(a + b + c) / 2;
Rez2:=sqrt(1/(sqr(a)+1)+1/(sqr(b)+1)+1/(sqr(c)+1));
If Rez1Then Min:=Rez1
Else Min:=Rez2;
Writeln(‘Min=’,Min:8:2);
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.
Задача №100(2).
Умова: Дано значення дійсної величини
Х. Визначити:
Для розв'язання цієї задачі необхідно пам'ятати, що ділити на нуль не
можна.
Program Example_100_2;
Uses crt;
Var X,Rezultat:real;
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть значення X: ’);
Readln(Х);
If X*X*X+X-2<>0
Then
begin
Rezultat:=(X-5)/(X*X*X+X-2);
Writeln(‘Rezultat=’,Rezultat:8:2);
end
Else
Writeln(‘Обчислення неможливі – ділення на нуль!’);
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.
Задача №101(4).
Умова: При даному значенні Х
обчислити:
Для розв'язання цієї задачі необхідно пам'ятати, що не можна знайти
квадратний корінь з від'ємного числа.
Program Example_101_4;
Uses crt;
Var X,Rezultat:real;
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть значення X: ’);
Readln(Х);
If (X>=1) and (X*X*X-sqrt(X-1)>=0)
Then
begin
Rezultat:=sqrt(X*X*X-sqrt(X-1));
Writeln(‘Rezultat=’,Rezultat:8:2);
end
Else
Writeln(‘Обчислення неможливі – від’ємний
підкореневий вираз!’);
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.
Задача №102(3).
Умова: Дано дійсні значення x та
y. Обчислити:
Для розв'язання цієї задачі необхідно виконання умов обох попередній
прикладів.
Program Example_102_3;
Uses crt;
Var X,Y,Rezultat:real;
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть значення X та Y: ’);
Readln(Х);
If (sqr(X)-sqr(Y)<>0) and (X*X*X-Y+0.5>=0)
Then
begin
Rezultat:=sqrt(X*X*X-Y+0.5)/(sqr(X)-sqr(Y));
Writeln(‘Rezultat=’,Rezultat:8:2);
end
Else
Writeln(‘Обчислення неможливі!’);
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.
Задача №107.
За рейтинговою системою оцінка визначається таким
чином, якщо сумарний бал учня становить не менше 92% від максимального, то
виставляється оцінка 12, якщо не нижче 70%, то виставляється 8, якщо ж не нижче
50%, то оцінка 5, в інших випадках - оцінка 2. Визначте оцінку учня, якщо він
набрав N балів, а максимальне значення сумарного балу становить
S.
В цій задачі можна використати повну або скорочену форму команди
розгалуження. Вам пропонується розв'язок зі скороченою формою.
Program Example_107;
Uses crt;
Var N,S,Grade:integer; {N – бали, що набрав учень; S
– максимальне значення
сумарного балу; Grade –
оцінка учня}
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть максимальне значення сумарного балу,
що може набрати учень: ’);
Readln(S);
Write(‘Введіть кількість балів, що отримав учень: ‘);
Readln(N);
If (S<=0) or (N<=0) or (N>S)
Then writeln(‘Помилка вхідних даних.’)
Else
Begin
N:=round(N/S*100); {Знаходження процентного
відношення балів учня до
максимально можливого}
If N>=92 then Grade:=12;
If (N<92) and (N>=70) then Grade:=8;
If (N<70) and (N>=50) then Grade:=5;
If (N<50) then Grade:=2;
Writeln(‘Учень отримав оцінку - ’, Grade);
End;
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.
Задача №103.
Умова: На площині дано дві точки (x1,
y1) та (x2, y2). Визначити, яка з них знаходиться далі від
початку координат.
Для розв'язання цієї задачі необхідно скористатися
теоремою Піфагора для знаходження відстані від початку координат до заданої
точки (дивись малюнок):
Очевидно, що відстань від початку координат до точки з координатами
(x, y) буде обчислюватись наступним співвідношенням: .
Зверніть увагу на те, що в зв'язку з тим, що кожна з координат в
формулі підноситься до квадрату, неважливо, в якій чверті координатної площини
буде знаходитись точка.
Виходячи з усього вище сказаного, програма для
розв'язання даної задачі має наступний вигляд:
Program Example_103;
Uses crt;
Var X1,Y1,X2,Y2:real; {X1,Y2,X2,Y2 – координати даних
точок}
S1,S2:real; {S1,S2 – відстані відповідно до
першої та другої точки}
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть координати першої точки: ’);
Readln(Х1,Y1);
Write(‘Введіть координати другої точки: ’);
Readln(Х2,Y2);
S1:=sqrt(sqr(X1)+sqr(Y1));
S2:=sqrt(sqr(X2)+sqr(Y2));
If S1Then Writeln(‘Друга точка далі від початку координат’)
Else Writeln(‘Перша точка далі від початку координат’);
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.
Задача №112.
Умова: Дано значення дійсних величин a,
b, c. Подвоїти ці значення, якщо a >= b >=
c, і замінити їх абсолютними значеннями, якщо це не так.
В цій задачі
зверніть увагу на дуже поширену помилку: в програмі не можна писати подвійну
нерівність, як це робиться в математиці. Тобто, вираз a >= b
>= c в програмі записується як складена умова (a >=
b) and (b >= c).
Program Example_112;
Uses crt;
Var a,b,c:real;
Begin
Clrscr; {Очищення екрану}
Write(‘Введіть три числа: ’);
Readln(a,b,c);
If (a>=b) and (b>=c)
Then
Begin
A:=A*2;
B:=B*2;
C:=C*2;
End
Else
Begin
A:=abs(A);
B:=abs(B);
C:=abs(C);
End;
Writeln(‘Вихідні значення:’);
Writeln(‘a=’,a:8:2);
Writeln(‘b=’,b:8:2);
Writeln(‘c=’,c:8:2);
Readkey; {Затримка зображення на екрані до
натискання будь якої клавіші}
End.