Помогите пожалуйста надо перевести пример в паскаль

0 голосов
26 просмотров

Помогите пожалуйста надо перевести пример в паскаль


image

Информатика (112 баллов) | 26 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Здесь нужно предварительно преобразовать выражение математически:
1) Паскаль по умолчанию принимает аргументы тригонометрических функций в радианной мере, а в условии указаны 15 градусов. 
Переведем в радианы. Известно, что 180° = π ≈3,14 радиан. Тогда
1°≈3,14/180. Далее, 15°≈15·3,14/180. Сократим дробь и получим:
15°≈3,14/12. 
2) В Паскале нет готовой функции для кубического корня. Нужно предварительно преобразовать по правилу математики:
∛b=b^(1/3) т.е. b в степени, равной 1/3. Далее используем формулу возведения любого положительного числа в любую степень:  
aᵇ=e^(b*ln(a)). Тогда кубический корень можно записать как: exp(1/3*ln(b))
3) Следует также помнить, что показательная функция eˣ в Паскале задается как встроенная функция exp(x), функция ln(x) записывается практически также как и в математике, квадрат числа можно записать как x*x или с помощью стандартной функции sqr(x).
4) Модуль выражения, стоящего в знаменателе, также имеет встроенную функцию abs(), а квадратный корень записывается как стандартная функция sqrt(). 
5) В знаменателе имеется константа е , ее значение ≈2,71. Но в Паскале есть встроенная функция eˣ, поэтому можно константу е записать как или exp(1)
Теперь всё можно собрать в общую формулу:

(sqr(x)*sin(3.14/12)+exp(1/3*ln(b)))/abs(7*exp(sqrt(exp(1)))-2*p)


(1.2k баллов)
0 голосов
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018
Внимание! Если программа не работает, обновите версию!

begin
  var (x,p,b):=ReadReal3('Введите x,p,b через пробел:');
  Writeln((x*x*Sin(DegToRad(15))+b**(1/3))/Abs(7*Exp(Sqrt(Exp(1)))-2*p))
end.
(150k баллов)