Как сделать корень в делфи
Репутация: нет
Всего: 5
Как в Delphi извлечь кубический корень (есть ли такая функция).
Квадратный корень - SQRT. А кубический(корень 3 степени)?
Репутация: нет
Всего: 207
Репутация: нет
Всего: 61
А можно и по-старому. по паскалёвскому.
y:=exp(ln(x)/3);
Теоритичски получаем кубический корень. Т. Е. если нам надо извлечи корень n-ой степени, то
y:=exp(ln(x)/n);
Репутация: нет
Всего: 5
Pakshin A. S.спасибо мне для паскаля и нужно (думаю что раздел по паскалю никто не читает ,поэтому спросил здесь)
Репутация: нет
Всего: 112
Репутация: нет
Всего: 61
Цитата(SlaUr @ 16.11.2004, 14:33) |
думаю что раздел по паскалю никто не читает |
По крайней мере есть один человек, который всегда читает - я, т. к. обязанность.
Репутация: нет
Всего: 24
Цитата |
я |
Ты неугадал, я тоже сюда иногда заглядываю.
Репутация: нет
Всего: 61
Запрещается!
1. Обсуждать и делится взломанными компонентами или программным обеспечением
2. Публиковать ссылки на варез
3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.
[ Время генерации скрипта: 0.1171 ] [ Использовано запросов: 21 ] [ GZIP включён ]
При составлении программ на любом языке программирования приходится использовать арифметические выражения. Обычно арифметические выражения строятся из операндов, в качестве которых могут быть константы, переменные и стандартные функции языка программирования. В арифметические выражения также входят арифметические операции и круглые скобки. В Delphi определено 6 основных арифметических операций. Перечислим их в соответствии с приоритетом (табл. 3.1). Операции с одинаковым приоритетом являются равноправными и выполняются слева направо, также как в математических выражениях.
Приоритет
Знак операции
Описание операции
деление 2 целых значений с отбрасыванием остатка
взятие остатка от деления 2 целых значений
Табл. 3.1 Основные арифметические операции языка Pascal
Операции div и mod определены только для целочисленных операндов. Для вещественных переменных их использовать нельзя. Рассмоотрим пример их использования:
var у, т, n:integer;
Здесь переменная т получит значение 20, ап - значение 17.
Стандартные функции служат для выполнения элементарных математических вычислений. Разработчики языка Pascal (Никлаус Вирт и др.) стремились сделать его ядро максимально компактным, поэтому в него не вошел целый ряд функций, обычно имеющихся в других языках программирования, например, таких, как вычисление тангенса, возведение числа в определенную степень и др. Все функции в Delphi оформляются одинаково: после имени функции следует ее аргумент (или аргументы), заключенный в круглые скобки. Если аргументов несколько, они разделяются запятыми. Информация об основ-
їункциях Delphi представлена в табл. 3.2.
Математическая запись
Запись на языке Pascal
Тип аргумента и результата
Integer (I) или Real (R)
Квадрат числа х
sin(x) cos(x) arctan(x)
Синус, косинус и арктангенс числа соответсвенно. Других тригонометрических функций в языке нет
аргумент -1 или R, результат -R
Экспонента и натуральный логарифм
аргумент -1 или R, результат - R
Квадратный корень от числа х
аргумент -1 или R, результат - R
Функция без аргументов, вернет число л
Функция отбрасывает дробную часть числа, число не округляется
аргумент R, результат I
Функция выделяет дробную часть числа
Округление вещественного числа до ближайшего целого
аргумент R, результат I
Табл. 3.2. Стандартные функции языка Pascal
В приведенной таблице х обозначает любую подходящую по типу переменную, либо результат вычисления выражения соответствующего типа, либо соответствующий по типу результат, вычисленный другой стандартной функцией.
Приведем примеры арифметических выражений:
- 1. Возвести величину х в пятую степень. Выражение может быть записано как х*х*х*х*х или sqr(x)*sqr(x)*x или sqr(sqr(x))*x, последнее показывает, что результаты одних функций могут быть аргументами других - это называют вложением функций. Разумеется, тип результата, возвращаемый вложенной функцией, должен быть подходящим для аргумента внешней функции.
- 2. Возвести величину а в произвольную степень х. Так как в Pascal нет функции возведения в произвольную степень, воспользуемся формулой а х =е х * 1п а ;
Обратите внимание, что все круглые скобки в выражении должны быть парными. Другой пример применения этого способа: ^ х=х = ехр(1/3*1п(х)).
- 3. Вычислить sin 2 x. Запись в Delphi: sqr(sin(x)). Сравните с выражением sin х 2 , которое записывается как sin(sqr(x)).
- 4. Вычислить k=tg(t). Так как функции тангенса в Delphi нет, распишем тангенс в виде k:=sin(t)/cos(t);
- 5. При необходимости изменить обычное старшинство операций в записи выражения используются дополнительные круглые скобки. Например, правильная
запись выражения 2 выглядит как у:=(а+Ь)/2;. Запись у:=а+Ь/2; неверна, b а + —
так как это означает 2 .
6. В записи выражений нельзя пропускать знак умножения, как это делается в математике: Ь 2 -4ас записывается как sqr(b)-4*a*c. Нельзя также писать sin*x или sin х, после имени функции может следовать только ее аргумент и обязательно в круглых скобках.
Тип выражения определяется старшим из типов входящих в него операндов (то есть, стандартных функций, переменных, констант). Старшинство типов можно определить по табл. 2.1. В первой строке таблицы находится самый младший тип.
Например, для переменных
var і,j: integer;
выражение i+4*j имеет целый тип, и его результат можно записать в целую переменную. Выражение f+ і*0.5 дает вещественный, результат, который должен быть записан в вещественную переменную.
Операция деления в Delphi всегда дает вещественное число. Для деления целых чисел с целым результатом используйте оператор div, для взятия остатка от деления двух целых - оператор mod.
Рассмотрим небольшой пример вычисления значений функции двух переменных (рис. 3.1)
z - 5Х 11 + 1п(6х + 3) - д/sin 2 ^ + cos 2 у :
Репутация: нет
Всего: 5
Как в Delphi извлечь кубический корень (есть ли такая функция).
Квадратный корень - SQRT. А кубический(корень 3 степени)?
Репутация: нет
Всего: 207
Репутация: нет
Всего: 61
А можно и по-старому. по паскалёвскому.
y:=exp(ln(x)/3);
Теоритичски получаем кубический корень. Т. Е. если нам надо извлечи корень n-ой степени, то
y:=exp(ln(x)/n);
Репутация: нет
Всего: 5
Pakshin A. S.спасибо мне для паскаля и нужно (думаю что раздел по паскалю никто не читает ,поэтому спросил здесь)
Репутация: нет
Всего: 112
Репутация: нет
Всего: 61
Цитата(SlaUr @ 16.11.2004, 14:33) |
думаю что раздел по паскалю никто не читает |
По крайней мере есть один человек, который всегда читает - я, т. к. обязанность.
Репутация: нет
Всего: 24
Цитата |
я |
Ты неугадал, я тоже сюда иногда заглядываю.
Репутация: нет
Всего: 61
Запрещается!
1. Обсуждать и делится взломанными компонентами или программным обеспечением
2. Публиковать ссылки на варез
3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.
[ Время генерации скрипта: 0.1481 ] [ Использовано запросов: 21 ] [ GZIP включён ]
Читайте также: