Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / преобразование. уравнение / 19 сообщений из 19, страница 1 из 1
31.08.2012, 20:58
    #37939439
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
имеется любая формула. например, a=(b*c^2+d):e
как найти, чему равно c через другие величины? или любая другая переменная? есть ли для этого спец функции, контролы, готовые коды? если с нуля, этот код отнимет у меня несколько дней
...
Рейтинг: 0 / 0
31.08.2012, 21:35
    #37939469
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
начинаю писать код. будет не менее сотни строк, если не много больше. неужели ещё никто не додумался, как выразить одну переменную через другую?(
...
Рейтинг: 0 / 0
31.08.2012, 21:56
    #37939476
Казанский
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
...
Рейтинг: 0 / 0
31.08.2012, 22:04
    #37939483
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
Казанский,

нужен исходник, или функция, или спец контрол. я напишу за пару дней преобразование любого уровнения первой степени. но второй и третьей врят ли(
...
Рейтинг: 0 / 0
02.09.2012, 00:01
    #37940189
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
написал код. около 200 строк основа. 300 строк полное преобразование. теперь могу преобразовывать любые уравнения первой степени. искать дискриминант учить программу влом.
...
Рейтинг: 0 / 0
03.09.2012, 10:02
    #37940838
QValD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
Qlewerимеется любая формула. например, a=(b*c^2+d):e
как найти, чему равно c через другие величины? или любая другая переменная? есть ли для этого спец функции, контролы, готовые коды? если с нуля, этот код отнимет у меня несколько дней
не все так просто. Некоторые уравнения нельзя решить аналитически, только итерационными методами.
...
Рейтинг: 0 / 0
04.09.2012, 01:31
    #37942212
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
QValD, ага...

Я вот тоже сразу подумал, - не проще ли для таких уравнений: сделать парсинг формулы (обозначение переменной->ячейка), занесение в ячейки известных значений, а затем использовать "подбор параметра" для искомой переменной...
...
Рейтинг: 0 / 0
04.09.2012, 08:28
    #37942270
преобразование. уравнение
Qlewer,

У тебя же уже есть суперпрограмма которая решает любые уравнения
...
Рейтинг: 0 / 0
04.09.2012, 16:28
    #37943114
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
AndreTM QValD, ага...

Я вот тоже сразу подумал, - не проще ли для таких уравнений: сделать парсинг формулы (обозначение переменной->ячейка), занесение в ячейки известных значений, а затем использовать "подбор параметра" для искомой переменной... можешь объяснить более развёрнуто? т.е. подбор? анонимУ тебя же уже есть суперпрограмма которая решает любые уравнения это она и есть. сейчас приходится использоваться формулы:
U=I*R
I=U:R
R=U:I
а я хочу задать только одну формулу U=I*R, а прога при загрузке сама бы преобразовала её для нахождения I и R. по сути, это просто понты, т.к. особой роли это не играет и на работу программы никак не влияет. но по феншую как бэ)
...
Рейтинг: 0 / 0
04.09.2012, 17:01
    #37943178
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
Qlewer,

Ну если использовать такую "простую" формулу ещё можно что нибудь сообразить. Ну как минимум не
Qlewerимеется любая формула. например, a=(b*c^2+d)/e

Как я понимаю будет (в математике не силён)

Код: plaintext
1.
2.
3.
4.
a=(b*c^2+d)/e
b*c^2+d = a * e
c^2 + d / b = (a*e) / b
c^2 = (a*e) / b - d / b
c = Sqr((a*e) / b - d / b)

чтобы эту шнягу прокрутить, нужно затратись сил больше чем написать самому все возможные комбинации.
...
Рейтинг: 0 / 0
04.09.2012, 17:09
    #37943189
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
(мысли вслух)
Код: plaintext
1.
2.
3.
4.
5.
6.
a=(b*c^2+d)/e 			- Исходное
0 = (b*c^2+d)/e - a		- Унифицировать, привести к нулю
0 = (b * c * c + d)/e - a	- Упростить
0 = b c * c * d + e / a -	- Построить RPN запись
???				- Приплыли... чё дальше не понятно...
 [code=plaintext]
...
Рейтинг: 0 / 0
04.09.2012, 17:12
    #37943194
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
VSVLAD,


c=((a*e-d):b)^0,5 должно получиться. VSVLADчтобы эту шнягу прокрутить, нужно затратить сил больше, чем написать самому все возможные комбинации. ага) любые уравнения первой степени я теперь могу преобразовывать. но проще, наверно, вручную вбивать уже готовые разновидности одной формулы
...
Рейтинг: 0 / 0
04.09.2012, 17:19
    #37943204
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
VSVLADчё дальше не понятно...

a=(b*c^2+d)/e
a*e=b*c^2+d
a*e-d=b*c^2
(a*e-d):b=c^2
((a*e-d):b)^0,5=c со степенями прога пока что путается, а так вроде работает. для каждой формулы нужно прокручивать несколько десятков циклов вида if mid(formula, x, 1) = ... then, чтобы проебразовать её. хлопотно, зато красиво будут выглядеть формулы. без лишних записей
...
Рейтинг: 0 / 0
04.09.2012, 17:23
    #37943215
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
Qlewer,
А разве степень x = y^2 равно x^0.5 = y ???
я думал что x = y ^ 2 равно sqr(x) = y , не ?
...
Рейтинг: 0 / 0
04.09.2012, 17:25
    #37943223
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
А точно... тоже самое
...
Рейтинг: 0 / 0
04.09.2012, 17:30
    #37943232
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
VSVLADя думал что x = y ^ 2 равно sqr(x) = y , не ? y=x^0,5 и y=sqr(x) это одно и то же. просто sqr - это функция. а ^0,5 - стандартное обозначение корня. ещё более привычно графическим знаком корня, но для этого мудиться с картинками и контроллами долго придётся, поэтому в моей проге используется ^0,5
...
Рейтинг: 0 / 0
04.09.2012, 17:30
    #37943233
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
VSVLAD,
Сравнил результаты, оба правильно формулу вывели =)
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
Sub TTT()
    a = 2
    e = 7
    d = 3
    b = 12
    
    MsgBox Sqr((a * e) / b - d / b) 'Моя
    MsgBox ((a * e - d) / b) ^ 0.5  'Ваша
End Sub
...
Рейтинг: 0 / 0
04.09.2012, 17:37
    #37943249
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
QlewerAndreTM не проще ли для [i]таких уравнений: сделать парсинг формулы (обозначение переменной->ячейка), занесение в ячейки известных значений, а затем использовать "подбор параметра" для искомой переменной... можешь объяснить более развёрнуто? т.е. подбор?Будет не лень по времени - попробую не объяснить, а нарисовать, например, в Excel, используя его встроенный "подбор параметра"...
...
Рейтинг: 0 / 0
04.09.2012, 17:52
    #37943276
Qlewer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование. уравнение
AndreTMБудет не лень по времени - попробую ок, пасяп.

сейчас прогой можно решить любую "стандартную" задачу с нахождением неизвестной. т.е. такую, где нужны чистые знания, а не логика. т.е. не задачи вида "почему...", "а зачем...", "а что круче...".
зато сложность задачи уже не важна. проге без разницы, 1 или комбинация из 20 разных формул используется для нахождения результата
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / преобразование. уравнение / 19 сообщений из 19, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]