69 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			69 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
|   | <html> | ||
|  | <head> | ||
|  | <title>Quadratic Equation Solver</title> | ||
|  | </head> | ||
|  | <body> | ||
|  | <?php | ||
|  | 
 | ||
|  | /**	Error reporting		**/ | ||
|  | error_reporting(E_ALL); | ||
|  | 
 | ||
|  | /**	Include path		**/ | ||
|  | set_include_path(get_include_path() . PATH_SEPARATOR . '../Classes/'); | ||
|  | 
 | ||
|  | ?>
 | ||
|  | <h1>Quadratic Equation Solver</h1> | ||
|  | <form action="Quadratic.php" method="POST"> | ||
|  | Enter the coefficients for the Ax<sup>2</sup> + Bx + C = 0 | ||
|  | <table border="0" cellpadding="0" cellspacing="0"> | ||
|  | 	<tr><td><b>A </b></td> | ||
|  | 		<td><input name="A" type="text" size="8" value="<?php echo (isset($_POST['A'])) ? htmlentities($_POST['A']) : ''; ?>"></td> | ||
|  | 	</tr> | ||
|  | 	<tr><td><b>B </b></td> | ||
|  | 		<td><input name="B" type="text" size="8" value="<?php echo (isset($_POST['B'])) ? htmlentities($_POST['B']) : ''; ?>"></td> | ||
|  | 	</tr> | ||
|  | 	<tr><td><b>C </b></td> | ||
|  | 		<td><input name="C" type="text" size="8" value="<?php echo (isset($_POST['C'])) ? htmlentities($_POST['C']) : ''; ?>"></td> | ||
|  | 	</tr> | ||
|  | </table> | ||
|  | <input name="submit" type="submit" value="calculate"><br /> | ||
|  | If A=0, the equation is not quadratic. | ||
|  | </form> | ||
|  | 
 | ||
|  | <?php | ||
|  | /**	If the user has submitted the form, then we need to execute a calculation **/ | ||
|  | if (isset($_POST['submit'])) { | ||
|  | 	if ($_POST['A'] == 0) { | ||
|  | 		echo 'The equation is not quadratic'; | ||
|  | 	} else { | ||
|  | 		/**	So we include PHPExcel to perform the calculations	**/ | ||
|  | 		include 'PHPExcel/IOFactory.php'; | ||
|  | 
 | ||
|  | 		/**	Load the quadratic equation solver worksheet into memory			**/ | ||
|  | 		$objPHPExcel = PHPExcel_IOFactory::load('./Quadratic.xlsx'); | ||
|  | 
 | ||
|  | 		/**	Set our A, B and C values			**/ | ||
|  | 		$objPHPExcel->getActiveSheet()->setCellValue('A1', $_POST['A']); | ||
|  | 		$objPHPExcel->getActiveSheet()->setCellValue('B1', $_POST['B']); | ||
|  | 		$objPHPExcel->getActiveSheet()->setCellValue('C1', $_POST['C']); | ||
|  | 
 | ||
|  | 
 | ||
|  | 		/**	Calculate and Display the results			**/ | ||
|  | 		echo '<hr /><b>Roots:</b><br />'; | ||
|  | 
 | ||
|  | 		$callStartTime = microtime(true); | ||
|  | 		echo $objPHPExcel->getActiveSheet()->getCell('B5')->getCalculatedValue().'<br />'; | ||
|  | 		echo $objPHPExcel->getActiveSheet()->getCell('B6')->getCalculatedValue().'<br />'; | ||
|  | 		$callEndTime = microtime(true); | ||
|  | 		$callTime = $callEndTime - $callStartTime; | ||
|  | 
 | ||
|  | 		echo '<hr />Call time for Quadratic Equation Solution was '.sprintf('%.4f',$callTime).' seconds<br /><hr />'; | ||
|  | 		echo ' Peak memory usage: '.(memory_get_peak_usage(true) / 1024 / 1024).' MB<br />'; | ||
|  | 	} | ||
|  | } | ||
|  | 
 | ||
|  | ?>
 | ||
|  | 
 | ||
|  | </body> | ||
|  | <html> |