|
Вопрос # 4 919/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Помогите перевести уравнения на язык DELPHI.
Уравнения в файле
К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)
 |
Вопрос задала: Marime (статус: Посетитель)
Вопрос отправлен: 16 января 2011, 01:35
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 45; последнее сообщение — 20 января 2011, 08:17; участников в обсуждении: 5.
Страницы: [1] [2] [3] [Следующая »]
|
min@y™ (статус: Доктор наук), 16 января 2011, 10:10 [#1]:
Цитата (Marime):
Помогите перевести уравнения на язык DELPHI.
Чем помочь-то?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Marime (статус: Посетитель), 16 января 2011, 20:57 [#2]:
как записать эти уравнения в delphi,что бы он расчитал их.
|
|
min@y™ (статус: Доктор наук), 16 января 2011, 21:23 [#3]:
Примени следующее:
- Ln(x) -> Логарифм натуральный;
- Exp(x) -> ex;
- Abs(x) -> |x|;
- Sqr(x) -> x2;
- x * Sqr(x) -> x3;
- Sqr(Sqr(x)) -> x4;
- x * Sqr(Sqr(x)) -> x5;
- Sqrt(x) -> x1/2 (кв. корень);
- Exp(Ln(x) * y) -> xy;
- 3! = 6;
- 5! = 120.
Вроде, ничего не забыл?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
DNK (статус: Студент), 16 января 2011, 21:37 [#4]:
Стоило бы заметить, что это не уравнения, а выражения.
"Digital Networked Knight"
|
|
Marime (статус: Посетитель), 17 января 2011, 20:03 [#5]:
1 выражение: Ln(sqrt(exp(x-y))+exp(abs(Ln(x))+z)
2 выражение:x-(exp(3)*Ln(x))/(1*2*3))+(exp(5)*Ln(x)/(1*2*3*4*5))
ТАК???
|
|
min@y™ (статус: Доктор наук), 17 января 2011, 20:09 [#6]:
Похоже, но проверять не буду.
Замени только заранее известные вещи на числа:
1*2*3 = 6
1*2*3*4*5 = 120
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
DNK (статус: Студент), 17 января 2011, 20:44 [#7]:
Цитата (min@y™):
Замени только заранее известные вещи на числа:
1*2*3 = 6
1*2*3*4*5 = 120 Умные компиляторы должны сами делать такую замену.
"Digital Networked Knight"
|
|
min@y™ (статус: Доктор наук), 17 января 2011, 21:06 [#8]:
Цитата (DNK):
Умные компиляторы должны сами делать такую замену.
Совершенно верно, никто и не спорит. Однако, смотрится противно.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Вадим К (статус: Академик), 17 января 2011, 23:30 [#9]:
Компилятор делфи не всегда, но умеет делать простые оптимизации.
(2 + 4), если включить оптимизацию он заменит на 6.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
min@y™ (статус: Доктор наук), 18 января 2011, 08:14 [#11]:
Цитата (Marime):
не совпадает с предыдущими расчетами
Так ты проверь, как отрабатывает твоя функция Stepeny() отдельно. Stepeny - идиотское название, тьфу!..
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Marime (статус: Посетитель), 18 января 2011, 22:16 [#12]:
так я и спрашиваю,как правильно записать эти выражения через функцию степени....
|
|
min@y™ (статус: Доктор наук), 19 января 2011, 08:28 [#13]:
Цитата (Marime):
так я и спрашиваю,как правильно записать эти выражения через функцию степени....
Может без функции лучше? Глянь, что у меня получилось:
const
X = 1.542;
Y = -3.26;
Z = 80.05;
var
A, B: Real;
begin
A:= Ln(Abs(Sqrt(Exp(X - Y)) + Exp(Ln(X) * Abs(Y)) + Z));
B:= X * (1 - Sqr(X) / 6 + Sqr(Sqr(X)) / 120); // вынес Х за скобку, чтоб степени стали чётными
end;
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
mirt.steelwater (статус: Посетитель), 19 января 2011, 10:01 [#14]:
хм..
мне все же кажется, что степень будет работать быстрее, чем sqr(x)*x или sqr(sqr(x))*x
Ⓐ свобода сопротивление солидарность
|
|
Вадим К (статус: Академик), 19 января 2011, 10:25 [#15]:
два-три умножения против расчёта логарифма и экспоненты? Думаю, умножение все таки быстрее, так как логарифмы то не табличные берутся, а рассчитываются. А тот кто знает, как это делается, не будет утверждать обратного.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
min@y™ (статус: Доктор наук), 19 января 2011, 10:35 [#16]:
Цитата (mirt.steelwater):
мне все же кажется, что степень будет работать быстрее
Поверь, тебе это только кажется, а всё как раз наоборот.
Если хочешь проверить скорость, прогони в циклах 100000 раз один вариант решения, а затем другой, замеряя время.
К тому же, тут не скорость важна, а правильный результат.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Вадим К (статус: Академик), 19 января 2011, 11:11 [#17]:
это известный синдром - преждевременная оптимизация.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
min@y™ (статус: Доктор наук), 19 января 2011, 11:24 [#18]:
Цитата (Вадим К):
это известный синдром - преждевременная оптимизация.
Это ты про меня?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
Вадим К (статус: Академик), 19 января 2011, 11:34 [#19]:
нет конечно. это я о mirt.steelwater - который хочет оптимизировать там, где это никак не нужно.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
min@y™ (статус: Доктор наук), 19 января 2011, 11:45 [#20]:
Цитата (Вадим К):
 нет конечно. это я о mirt.steelwater - который хочет оптимизировать там, где это никак не нужно.
А... Я-то думал, что то, что я вынес Х за скобку - это преждевременная оптимизация.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
Страницы: [1] [2] [3] [Следующая »]
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|