Seregarival
Новичок
Польская запись
Я новичок, ничего большого пока не делал, делаю программу для перевода выражения в польскую запись:
Ошибок никаких нету, но код не выполняется, только что читал про глобальные переменные, и возникла мысль, может переменные (Например $Simbol) не передаются в другие функции и их надо объявить глобально, хотя не уверен ... посмотрите пожалуйста.
Я новичок, ничего большого пока не делал, делаю программу для перевода выражения в польскую запись:
PHP:
<?php
Function KtoEto($Simbol)
{
if ($simbol != "")
if ($simbol="[a-Z]")
$all=$all+$simbol;
if ($simbol = '["*","/"]')
{$prior=2;
if ($predprior <= $prior)
{
$mass=$mass+$simbol;
$predprior = $prior; } else
{
$a=strlen($mass);
for ($j=strlen($mass); $j >= 0; $j--)
{
$simbol1=substr($mass,$j,2);
$all=$all+$simbol1;
}
}
$mass=$mass+$simbol;
$predprior=$prior; }
if ($simbol= '["+", "-"]')
{$prior=1;
if ($predprior <= $prior)
{
$mass=$mass+$simbol;
$predprior = $prior;
} else
{
$a=strlen($mass);
for ($j=strlen($mass); $j > 0; $j--)
{
$simbol1=substr($mass,$j,2);
$all=$all+$simbol1;
}
}
$mass=$mass+$simbol;
$predprior=$prior;
}
if ($simbol="(")
{$mass = $mass+$simbol;}
if ($simbol = ")")
for ($j=strlen($mass); $j > 0; $j--)
{
$simbol1=substr($mass,$j,2);
$all=$all+$simbol1;
}
return($all);
}
Function Polsha($formula)
{
$formula = str_replace(" ","", $formula);
$dl=strlen($formula);
$x="";
$all="";
$predprior=0;
$mass="";
for ($i = 0; $i <= $dl; $i++)
{
$simbol=substr($Formula,$i,2);
KtoEto($simbol);
}
return($all);
}
$formula = "a*b+c-d/e";
echo(Polsha($formula));
?>
Ошибок никаких нету, но код не выполняется, только что читал про глобальные переменные, и возникла мысль, может переменные (Например $Simbol) не передаются в другие функции и их надо объявить глобально, хотя не уверен ... посмотрите пожалуйста.