Есть программа по вычислению двойных интегралов на PHP. Надо ее преобразовать в PHP без хтмл, то есть с запуском из командной строки. читать дальше

@темы: PHP, Вопросы

Комментарии
01.06.2010 в 02:49

Never Say Never (c)
www.php.net/manual/en/features.commandline.usag...

Цитата



$ chmod +x test
$ ./test -h -- foo
array(4) {
[0]=>
string(6) "./test"
[1]=>
string(2) "-h"
[2]=>
string(2) "--"
[3]=>
string(3) "foo"
}
01.06.2010 в 10:19

Что это такое? =)
01.06.2010 в 12:11

Never Say Never (c)
убери if (($_GET['F'] != '')&&($_GET['znak'] != '')&&($_GET['F2'] != '')&&($_GET['F2'] != '')&&($_GET['iter'] != '')&&($_GET['Xmin'] != '')&&($_GET['Xmax'] != '')&&($_GET['Ymin'] != '')&&($_GET['Ymax'] != ''))
это что бы еще можно было аргументы считывать
01.06.2010 в 13:05

Спасибо, еще понял, что вместо знака надо вставлять цифру соответствующего ему кейса. Теперь хотя б хоть запускается, но ответ в любом случае выдает ноль.

 <?php
     $F 
= ($x*$y); //подынтегральное выражение
     
$F1 = (pow($x2)+4*pow($y2)); //левая часть выражения, определяющего границы функции
     
$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");   
 
?>

01.06.2010 в 19:47

Never Say Never (c)
это потому что $x и $y не определены,а в первой и второй строке используются

Расширенная форма

Редактировать

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail