Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Формулы на сайте (https://javascript.ru/forum/dom-window/44475-formuly-na-sajjte.html)

irbis_teh 21.01.2014 14:37

Формулы на сайте
 
Добрый день, я новичок javascript, и прошу помощи у знающих.
Хочу на сайте сделать расчет формул, знаю как рассчитать одну формулу по известным данным. Но нужно мне сделать так что бы можно было менять неизвестные. Например формула a+b=c, известно a и b можно легко написать программу для расчета. А если вдруг стало неизвестно b то нужно вести расчет по формуле c-b=a. Как можно сделать чтобы скрипт понимал пустую ячейку и вел расчеты по другой формуле. В каком направлении следует копать.
Сайт на WordPress, пример следующий
[script type="text/javascript"]
function calc(form) {
var V = eval(form.V.value);
var D = eval(form.D.value);
g = (1000*V)/(Math.PI*D);
form.n.value = g.toFixed(0);
}
[/script]

<form>
<table>
<tbody>
<tr>
<td><input type="text" name="V" size="5" value="100" /></td>
<td>V — скорость резания, м/мин;</td>
</tr>
<tr>
<td><input type="text" name="D" size="5" value="50" /></td>
<td>D - диаметр обработки, мм;</td>
</tr>
<tr>
<td><input type="text" name="n" size="5" /></td>
<td>n - число оборотов; об/мин</td>
</tr>
<tr>
<td colspan="3" align="center"><input onclick="calc(this.form)" type="button" value="Расчет" /></td>
</tr>
</tbody>
</table>
</form>

ksa 21.01.2014 14:52

Цитата:

Сообщение от irbis_teh
Как можно сделать чтобы скрипт понимал пустую ячейку и вел расчеты по другой формуле. В каком направлении следует копать.

Есть такая синтаксическая конструкция! :yes:
http://javascript.ru/if

kostyanet 21.01.2014 15:52

Ваша "формула" это обратная величина числа pi.

на js: var d = 1/Math.PI;

или 0.3183098861837907 для 1 оборота в 1 единицу времени на 1 диаметра.

Отсюда можно достать настоящую формулу и не придется корячится с if-else

kostyanet 21.01.2014 15:57

Например юзер ввел 3К в обороты и 3 в диаметр, получил 0.3183098861837907

Я в математике дуб-дубом, поэтому дальше сами.

irbis_teh 21.01.2014 16:00

if-else это второстепенный вопрос. Как дать понять скрипту, что ячейка пуста, а потом на основании этого вести процедуру if-else либо другую процедуру.

irbis_teh 21.01.2014 16:01

пример который я написал не основной, нужно будет осуществлять другие расчеты по другим формулам.

kostyanet 21.01.2014 16:02

Я вам пытался объяснить что вы можете получить любое из двух неизвестных по 1 известному.

Разберитесь с математикой и вам не нужны будут ифы, а равно и кнопка. Куда юзер вводит - где фокус - по той переменной считаете две других и сразу выводите в два других поля.

kostyanet 21.01.2014 16:03

дать понять скрипту, в случае когда не допрете до зависимости

if(!v) {// v пустая, или 0, что для вас эквипенисуально}

ksa 21.01.2014 16:04

Цитата:

Сообщение от irbis_teh
Как дать понять скрипту, что ячейка пуста

Для этого и используют if...

irbis_teh 21.01.2014 16:05

без привязки к Pi и др. У меня есть 3 ячейки, в 2 из них ввожу исходные данные в третей ответ. Теперь у меня известен ответ но неизвестен один из исходных данных и я эту ячейку оставляю пустую, а в ответе какое либо значение. Нужно рассчитать тот параметр который я оставил пустым.


Часовой пояс GMT +3, время: 18:01.