Есть программа по вычислению двойных интегралов на PHP. Надо ее преобразовать в PHP без хтмл, то есть с запуском из командной строки.
читать дальшеСобственно вот сама программа paste.org.ru/?vga6h3 . Задание параметров в программе реализовано через eval, теперь в этом не нуждаюсь, все параметры вводятся в исходный код напрямую. При запуске программы из коммандной строки надо, чтоб сразу выводился только ответ по параметрам, введенным в код. Вот мои жалкие попытки самому преобразовать, но ничего не выходит paste.org.ru/?r61d8p
Цитата
$ chmod +x test
$ ./test -h -- foo
array(4) {
[0]=>
string(6) "./test"
[1]=>
string(2) "-h"
[2]=>
string(2) "--"
[3]=>
string(3) "foo"
}
это что бы еще можно было аргументы считывать
$F = ($x*$y); //подынтегральное выражение
$F1 = (pow($x, 2)+4*pow($y, 2)); //левая часть выражения, определяющего границы функции
$znak = 3; //знак между правой и левой частями выражения, определяющего границы функции
$F2 = 1; //правая часть выражения, определяющего границы функции
$iter = 100000; //количество итераций
$Xmin = -5;
$Xmax = 5;
$Ymin = -5;
$Ymax = 5;
$Xint = $Xmax - $Xmin;
$Yint = $Ymax - $Ymin;
$SumH = 0;
for ($i = 1; $i <= $iter; $i++)
{
$x = $Xmin + lcg_value() * $Xint;
$y = $Ymin + lcg_value() * $Yint;
if (($F1= '0') && ($F2= '0'))
{
continue;
}
else
{
$InInt = false;
switch ($znak)
{
case 0: if ($F1 == $F2) $InInt = true; break;
case 1: if ($F1 < $F2) $InInt = true; break;
case 2: if ($F1 > $F2) $InInt = true; break;
case 3: if ($F1 <= $F2) $InInt = true; break;
case 4: if ($F1 >= $F2) $InInt = true; break;
}
if (!$InInt) continue;
}
$SumH += abs($F);
}
$rez = (($SumH * $Xint * $Yint) / $iter);
echo ("Answer: $rez");
?>