Раздел: Стандартные функции Паскаля

Функция Exp

Основы программирования 2.0 Основы программирования
Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее...

Функция Exp в Паскале (и многих других языках программирования) вычисляет экспоненту. Синтаксис:

function Exp(X : ValReal) : ValReal;

О типе ValReal я рассказывал здесь.

Функция Exp X вычисляет и возвращает экспоненту числа X.

Вычисление экспоненты - это вычисление числа е в степени X. То есть

Exp(X) = eX

Подробности см. в видео и читайте в статье далее.

Обратная функция Ln

Если вы помните функцию Ln, то вы также помните, что она вычисляет натуральный логарифм.

Так вот, обратной функцией Exp является функция Ln. Иными словами, обратная функция экспоненциальной функции (экспоненты) - это натуральный логарифм. То есть:

Log e (Y) = Ln (Y) = X

eX = Y = Exp (X)

Или

Ln(Exp(X)) = X

Или

eX = Exp(X) = Exp(Ln(Y)) = Y

Есть ещё вот такая полезная формула:

xY = eY ln(x) = Exp(Y * Ln(X))

Из этого следует, что используя функции Ln и Exp, мы можем возвести любое число в любую степень. Сделать это можно, например, так:

P := Exp(Y * Ln(X))

Если описать это математическим языком, то приведённое выше выражение будет эквивалентно следующей записи:

P = xY

Правда, надо сказать, что здесь есть нюансы. Есть частные случаи, когда приведённое выше выражение выдаст неправильный результат. Например, когда Y или X отрицательные числа, или когда они равны нулю. Такие ситуации надо обрабатывать дополнительно. Однако эта статья не о возведении в степень, поэтому мы будем рассматривать эти частные случаи в другой статье.

Пример исходного кода, где используется функция Exp:

program funcexp;

uses Math;

var x, y : single;

begin
  y := Exp(2);          //y = Exp(2) = 7,39
  WriteLn('Exp(2) = e * e = ', y:0:4);

  x := Exp(3 * Ln(2));  //x = 2 в степени 3
  WriteLn('2 ^ 3 = ', x:0:4);

  ReadLn;
end.

Как стать программистом 2.0 Как стать программистом 2.0

Эта книга для тех, кто хочет стать программистом. На самом деле хочет, а не просто мечтает. И хочет именно стать программистом с большой буквы, а не просто научиться кулебякать какие-то примитивные программки… Подробнее...
Помощь в технических вопросах Помощь в технических вопросах

Помощь студентам. Курсовые, дипломы, чертежи (КОМПАС), задачи по программированию: Pascal/Delphi/Lazarus; С/С++; Ассемблер; языки программирования ПЛК; JavaScript; VBScript; Fortran; Python и др. Разработка (доработка) ПО ПЛК (предпочтение - ОВЕН, CoDeSys 2 и 3), а также программирование панелей оператора, программируемых реле и других приборов систем автоматизации. Подробнее...

Инфо-МАСТЕР ®
Все права защищены ©
e-mail: mail@info-master.su

Яндекс.Метрика