profile
Опубликовано 5 лет назад по предмету Информатика от восем

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

  1. Ответ
    Ответ дан Аккаунт удален
    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.
  2. Ответ
    Ответ дан FreeProgrammer
    Здесь нужно предварительно преобразовать выражение математически:
    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)


Самые новые вопросы