PHP matan рдХреИрдкреНрдЪрд╛ - рдпрд╣ рдЖрд╕рд╛рди рд╣реИ!


рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рдореИрдВ рдЖрдкрдХреЛ рддрдерд╛рдХрдерд┐рдд рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХреЗрд╡рд▓ PHP рдФрд░ GD рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ " рдордЯрди-рдХреИрдкреНрдЪрд╛ "ред рд╣рдо PhpMathPublisher рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ , рдПрдХ рдлреНрд░реАрд╡реЗрдпрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЬреЛ рдХреЗрд╡рд▓ GD рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ, рд╕реВрддреНрд░реЛрдВ рдХреЛ рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рд╕рд┐рджреНрдзрд╛рдВрдд рдХреА рдмрд┐рдЯ


рдПрдХ рдХрд╛рд░реНрдп рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо рд▓реМрд░рдореЛрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╕реАрдорд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдПрдХ рдмрд╣реБрдкрдж рд╕рдорд╛рд░реЛрд╣ рдХрд╛ рдПрдХ рд╕рд░рд▓ рдирд┐рд╢реНрдЪрд┐рдд рдЕрднрд┐рдиреНрди рдЕрдВрдЧред рдпрджрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╣реИ, рддреЛ рдЗрд╕реЗ рдорди рдореЗрдВ рднреА рдЧрд┐рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рдПрдХ рддрд╕реНрд╡реАрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ:

рджрд░рдЕрд╕рд▓, рд╡рд┐рдХрд╛рд╕


PhpMathPublisher рдХреЛ phpmathpublisher рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╣рдо рдЖрд░рдВрдн рдХрд░рддреЗ рд╣реИрдВ:
include("phpmathpublisher/mathpublisher.php"); //    $upper=rand(0, 10); //    $lower=rand(-10, 0); //    $num=4; //     

рдЕрдм рдЖрдкрдХреЛ рд╕реВрддреНрд░ рдХреЗ рд╕рд╛рде рдПрдХ рдкрдВрдХреНрддрд┐ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЖрдк рдПрдХ рд╕рд╛рде рдЙрддреНрддрд░ рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
 $text="int{".$lower."}{".$upper."}{"; for($i=0;$i<$num;$i++){ $k=rand(1, 5); //   x $p=rand(1, 5); //   x $sign=rand(0, 2)==0?0:1; // ,    2   $tt=$k>1?$k:""; //      $tt.="x"; if($p>1)$tt.="^".$p; if($i==0){ if($sign==1)$text.="({-}".$tt.")"; else $text.=$tt; }else $text.=($sign==1?"-":"+").$tt; if($sign==1)$k=-$k; $answer+=($k*pow($upper, $p+1)/($p+1))-($k*pow($lower, $p+1)/($p+1)); //    . } $text.="dx}"; 

рдирддреАрдЬрддрди, рд╣рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдПрдХ рдкрдВрдХреНрддрд┐ рдорд┐рд▓рддреА рд╣реИ:
int {-4} {4} {3x ^ 5-4x ^ 5 + 3x ^ 2 + x ^ 2dx}
рдЕрдм рдпрд╣ рдЪрд┐рддреНрд░ рдореЗрдВ рдпрд╣ рд╕рдм рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИ - PhpMathPublisher рдХреА рдорджрдж рд╕реЗ рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ рд▓рд╛рдЗрдиреЗрдВ рд▓реЗрдЧрд╛:
 $formula=new expression_math(tableau_expression(trim($text))); $formula->dessine(24); // 24 -   $w=imagesx($formula->image)+20; //   10    ,            $h=imagesy($formula->image)+20; $fi=imagecreatetruecolor($w, $h); imagefill($fi, 0, 0, 0xFFFFFF); imagecopy($fi, $formula->image, 10, 10, 0, 0, $w-20, $h-20); 

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЧреИрд░-рд░реИрдЦрд┐рдХ рд╡рд┐рдХреГрддрд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реИ - рдЗрд╕рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдорд▓реНрдЯреАрд╡реЗрд╡ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рд▓рд┐рдВрдХ рдПрдХ рдкреВрд░реНрдг рдХреЛрдб рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред
рдФрд░ рдлрд┐рд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдкрд░рд┐рдгрд╛рдореА рдЫрд╡рд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ:
 header("Content-type: image/png"); imagepng($im); 

рдПрдХ рдирд┐рд╖реНрдХрд░реНрд╖ рдХреЗ рдмрдЬрд╛рдп


рдЗрд╕ рд▓рд┐рдкрд┐ рд╕реЗ рдЙрддреНрдкрдиреНрди рдХреБрдЫ рдФрд░ рдХреИрдкреНрдЪрд╛:



рдФрд░ рдЙрдкрдпреЛрдЧ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдПрдХ рдкреГрд╖реНрда ред
рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рд╕рд░реНрд╡рд░ рд╣реЗрдмреНрд░рд╛рдлрд╝реЗрдХреНрдЯ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ


Source: https://habr.com/ru/post/In120646/


All Articles