function Generate($level) { $angle = rand(1, 179); $length = rand(2, 7); // // Original exercise // $angle = 120; // $length = 5; $correct = round1(sqrt(pow($length, 2) + pow($length, 2) - 2 * $length * $length * cos(toRad($angle)))); $question = 'Az $\\overrightarrow{AB}$ és $\\overrightarrow{AC}$ vektorok $' . $angle . '°$-os szöget zárnak be egymással, és mindkét vektor hossza $' . $length . '$ egység.'; $solution = '$' . round2($correct) . '$'; $question .= ' Számítsa ki az $\\overrightarrow{AB}-\\overrightarrow{AC}$ vektor hosszát legalább két tizedesjegy pontossággal!'; $hints = $this->Hints($angle, $length, $correct); return array('question' => $question, 'correct' => $correct, 'solution' => $solution, 'hints' => $hints); }
function geoDistance($loc1, $loc2) { $lat1 = $loc1[0]; $lon1 = $loc1[1]; $lat2 = $loc2[0]; $lon2 = $loc2[1]; $R = 6371.009; $dLat = toRad($lat2 - $lat1); $dLon = toRad($lon2 - $lon1); $lat1 = toRad($lat1); $lat2 = toRad($lat2); $a = sin($dLat / 2.0) * sin($dLat / 2.0) + sin($dLon / 2.0) * sin($dLon / 2.0) * cos($lat1) * cos($lat2); $c = 2 * atan2(sqrt($a), sqrt(1 - $a)); $d = $R * $c; return $d; }