FormattedQuestionForm = e107::getForm()->open('questionForm', 'post', '', ['autocomplete' => 'off', 'class' => 'formclass']) . "\n"; //$tmp = new EnglishYearTwo; //$tmp->RandomQuestion(); $Years = [ 'YearOne', 'YearTwo', 'YearThree', 'YearFour', 'YearFive', 'YearSix', 'YearSeven', 'YearEight', 'YearNine', 'YearTen', 'YearEleven', 'YearTwelve', ]; $Function = $Years[($this->yearlevel) - 1]; $this->FormattedQuestionForm .= e107::getForm()->hidden('yearLevel', $this->yearlevel) . "\n"; $this->$Function(); $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->button('Answered', 'Check answer') . "\n"; $this->FormattedQuestionForm .= e107::getForm()->close(); $this->FormattedQuestionForm .= '
'; //print_a(['GetRandomQuestion', $this->FormattedQuestionForm]); return $this->FormattedQuestionForm; } private function YearOne() { $subjects = [ 'english' => new EnglishYearOne(), //'languages' => $this->MathQuestions(), 'mathematics' => new MathYearOne(), //'science' => $this->MathQuestions(), ]; $Class = $subjects[$this->subjectSelector]; $this->FormattedQuestionForm .= e107::getForm()->hidden('subject', $this->subjectSelector) . "\n"; $Class->RandomQuestion(); $this->FormattedQuestionForm .= $Class->FormattedQuestionForm; } private function YearTwo() { $subjects = [ 'english' => new EnglishYearTwo(), //'languages' => $this->MathQuestions(), 'mathematics' => new MathYearTwo(), //'science' => $this->MathQuestions(), ]; $Class = $subjects[$this->subjectSelector]; $this->FormattedQuestionForm .= e107::getForm()->hidden('subject', $this->subjectSelector) . "\n"; $Class->RandomQuestion(); $this->FormattedQuestionForm .= $Class->FormattedQuestionForm; } private function YearThree() { } private function YearFour() { } private function YearFive() { } private function YearSix() { } private function YearSeven() { } private function YearEight() { } private function YearNine() { } private function YearTen() { } private function YearEleven() { } private function YearTwelve() { $subjects = [ 'english' => $this->MathQuestions(), 'pePd' => $this->MathQuestions(), //health-and-physical-education 'socialStudies' => $this->MathQuestions(), //humanities-and-social-sciences 'languages' => $this->MathQuestions(), 'mathematics' => $this->MathQuestions(), 'science' => $this->MathQuestions(), 'technologies' => $this->MathQuestions(), 'art' => $this->MathQuestions() ]; $subjects[$this->subjectSelector]; } } ////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////// //////// Mathematics ////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////// class MathYearOne { // Todo finish questions public $enabled = true; public $FormattedQuestionForm; private $diff = 0; function __construct() { $sql = e107::getDb(); $userName = e107::getUser()->getLoginName(); $this->diff = $sql->retrieve('timekeeperStats', 'timekeeper_percent', 'timekeeper_username="' . $userName . '" AND timekeeper_yearLevel=1'); //print_a([$this->diff,'e107_timekeeperStats', '*', 'timekeeper_username="' . $userName . '"']); if (!isset($this->diff)) { $this->diff = 20; } } public function RandomQuestion() { $methods = preg_grep('/[^RandomQuestion]/', get_class_methods($this)); $RandomEnglishType = rand(2, count($methods)); $function = $methods[$RandomEnglishType]; //print_a(['FunctionName'=>'RandomQusetion','Methods'=>$methods,'RandomSelectionNo'=>$RandomEnglishType,'CurrentSelection'=>$function]); return $this->$function(); //return $this->gA(); } private function NumberSequences() { $this->FormattedQuestionForm .= e107::getForm()->label('Find the missing number(s) in the sequence.') . "\n"; $this->FormattedQuestionForm .= '
'; $startingNumber = rand(0, (int) ($this->diff*3)); $incrementalNumber = rand(1, (int) ($this->diff * 2)); $missingNumber = rand(1, 10); $TempQuestion = ""; for ($i = 1; $i <= 10; $i++) { if ($i == $missingNumber) { $this->FormattedQuestionForm .= e107::getForm()->label('???') . "\n"; $this->FormattedQuestionForm .= " - "; $TempQuestion .= "___,"; $solution = $startingNumber; } elseif ($i == 10) { $this->FormattedQuestionForm .= e107::getForm()->label($startingNumber) . "\n"; $TempQuestion .= $startingNumber; } else { $this->FormattedQuestionForm .= e107::getForm()->label($startingNumber) . "\n"; $this->FormattedQuestionForm .= " - "; $TempQuestion .= $startingNumber . ","; } $startingNumber += $incrementalNumber; } $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write first answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', $solution) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $TempQuestion) . "\n"; } private function Addition() { $this->FormattedQuestionForm .= e107::getForm()->label('Addition, find the answers.') . "\n"; $this->FormattedQuestionForm .= '
'; $firstNumber = rand(1, (int) ($this->diff * 13)); $secondNumber = rand(1, $firstNumber); $this->FormattedQuestionForm .= e107::getForm()->label($firstNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->label(" + " . $secondNumber) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', $firstNumber + $secondNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $firstNumber . "+" . $secondNumber . "=") . "\n"; } private function Subtraction() { $this->FormattedQuestionForm .= e107::getForm()->label('Subtraction, find the answers.') . "\n"; $this->FormattedQuestionForm .= '
'; $firstNumber = rand(1, (int) ($this->diff * 9)); $secondNumber = rand(1, $firstNumber); $this->FormattedQuestionForm .= e107::getForm()->label($firstNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->label(" - " . $secondNumber) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', $firstNumber - $secondNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $firstNumber . "-" . $secondNumber . "=") . "\n"; } private function Multiplication() { $this->FormattedQuestionForm .= e107::getForm()->label('Multiplication, find the answers.') . "\n"; $this->FormattedQuestionForm .= '
'; $firstNumber = rand(1, (int) ($this->diff*6)); $secondNumber = rand(1, $firstNumber); $this->FormattedQuestionForm .= e107::getForm()->label($firstNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->label(" x " . $secondNumber) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', ($firstNumber * $secondNumber)) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $firstNumber . "x" . $secondNumber . "=") . "\n"; } private function Division() { $this->FormattedQuestionForm .= e107::getForm()->label('Division, find the answers (No remainders).') . "\n"; $this->FormattedQuestionForm .= '
'; $firstNumber = rand(1, (int) ($this->diff*3)); $secondNumber = rand(1, $firstNumber); $divNumber = $firstNumber * $secondNumber; $this->FormattedQuestionForm .= e107::getForm()->label($divNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->label(" ÷ " . $secondNumber) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', (int) ($divNumber / $secondNumber)) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $divNumber . " ÷ " . $secondNumber . "=") . "\n"; } private function Rounding() { $firstNumber = sprintf("%01.2f", (float) rand(100, (int) ($this->diff) * 100) / 100); $answer = sprintf("%01.2f", round($firstNumber / 5, 2) * 5); $this->FormattedQuestionForm .= e107::getForm()->label('Rounding, round off $' . $firstNumber . ' to the nearest five cents.') . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', '$' . $answer) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', "Round $" . $firstNumber . " off to the nearest five cents") . "\n"; } private function RoundingWorded() { $this->FormattedQuestionForm .= e107::getForm()->label('Rounding in practical use.') . "\n"; $this->FormattedQuestionForm .= '
'; $names = ['Joe', 'Mat', 'Dug', 'Adam', 'Will', 'Nick']; $Quests = [['{Name1} went to the shop to buy some lollies they were {RandomQuantity} for ${RandomPrice}. How much did he pay in total if he bought {LimitedQuantity} ?' , '({RandomQuantity}*{RandomPrice})*{LimitedQuantity}'], ['{Name1} bought a puppy they were {RandomQuantity} for ${RandomPrice}. How much did he pay in total if he bought {LimitedQuantity} ?' , '({RandomQuantity}*{RandomPrice})*{LimitedQuantity}'], ['{Name1} sold bananas for {RandomQuantity} for ${RandomPrice}. How much did he make in total if he sold {LimitedQuantity} ?' , '({RandomPrice}/{RandomQuantity})*{LimitedQuantity}'], ]; $RandomQuantity = 1; $RandomPrice = sprintf("%01.2f", (float) rand(100, (int) ($this->diff / 6) * 100) / 100); $LimitedQuantity = (int) rand(1, (int) $this->diff); $SelectedQuestionNo = array_rand($Quests); $SelectedNameNo = array_rand($names); $returnQuestion = str_replace('{LimitedQuantity}', $LimitedQuantity, str_replace('{RandomPrice}', $RandomPrice, str_replace('{RandomQuantity}', $RandomQuantity, str_replace('{Name1}', $names[$SelectedNameNo], $Quests[$SelectedQuestionNo][0])))); $returnAnswer = str_replace('{LimitedQuantity}', $LimitedQuantity, str_replace('{RandomPrice}', $RandomPrice, str_replace('{RandomQuantity}', $RandomQuantity, $Quests[$SelectedQuestionNo][1]))); $solvedAnswer = sprintf("%01.2f", round(eval('return ' . $returnAnswer . ';') / 5, 2) * 5); // print_a(['returnAnswer'=>$returnAnswer, // 'returnQuestion'=>$returnQuestion, // 'Selection1and2'=>$SelectedQuestionNo.'-'.$SelectedNameNo, // 'question'=>$returnAnswer, // 'evaled'=>$solvedAnswer]); $this->FormattedQuestionForm .= e107::getForm()->label("Round off to the nearest five cents. " . $returnQuestion) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', '$' . $solvedAnswer) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', "Round off to the nearest five cents. " . $returnQuestion) . "\n"; } private function Fractions() {// needs to be multi part question require_once( __DIR__ . '/fraction/src/Fraction.php'); $this->FormattedQuestionForm .= e107::getForm()->label('Fractions, reduce to its simplest form to find the answers. (Answer as mixed fraction where possible.)') . "\n"; $this->FormattedQuestionForm .= '
'; $multiplier = rand(1, (int)($this->diff/4)); $nominator = rand(1, (int)($this->diff/4)); $denominator = rand(1, (int)($this->diff/4)); $fract1 = new Fraction($nominator*$multiplier, $denominator*$multiplier); //print_a(['fraction1'=>(string)$fract1,'fraction2'=>(string)$fract2,'fraction3'=>(string)$fract3,]); // 1/2 $this->FormattedQuestionForm .= e107::getForm()->label($nominator*$multiplier) . "
\n"; $this->FormattedQuestionForm .= "-------
\n"; $this->FormattedQuestionForm .= e107::getForm()->label($denominator*$multiplier) . "\n"; $this->FormattedQuestionForm .= '

'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!','autocomplete'=>"off"]) . "\n"; $this->FormattedQuestionForm .= "-------
\n"; $this->FormattedQuestionForm .= e107::getForm()->text('q2', '', 80, ['placeholder' => 'Write answer here!','autocomplete'=>"off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', (int)($fract1->getNumerator())) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a2', (int)($fract1->getDenominator())) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 2) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', "Simplify " . $nominator*$multiplier . " over " . $denominator*$multiplier) . "\n"; } // fractions greater lesser then ie. 1/2 > 1/3 ? function gA() { $this->FormattedQuestionForm = e107::getForm()->label('General Knowledge') . "\n"; $this->FormattedQuestionForm .= '
'; $names = ['Joe', 'Mat', 'Dug', 'Adam', 'Will', 'Nick', 'Tim', 'Greg', 'Elliot']; $Quests = [['{Name1} ran {RandomQuantity}km. How many meters is that?' , '({RandomQuantity}*1000)','m'], ['{Name1} bought {RandomQuantity}m of string. How many centermeters did he buy?' , '({RandomQuantity}*100)','cm'], ['{Name1} ate {RandomQuantity}kg of roast beef. How many grams did he eat?' , '({RandomQuantity}*1000)','g'], ['{Name1} can build {RandomQuantity} cars a year. How many cars did he make last year?' , '({RandomQuantity})',''], ['{Name1} weighed {RandomQuantity}g of flux into a sample. How many mg did he weigh?' , '({RandomQuantity}*1000)','mg'], ['The perimeter of a square is {RandomQuantity} cm. What is the area of 2 such squares?' , '((({RandomQuantity}/4)*({RandomQuantity}/4))*2)','cm2'], ['{Name1} has ${RandomQuantity} and Silas has three times more than {Name1}. How much money do they have altogether?' , '"$".({RandomQuantity}+({RandomQuantity}*3))',''], ['The area of 2 squares is {RandomQuantity} cm². What is the area of 3 such squares?' , '(({RandomQuantity}/2)*3)','cm2'], //['A coffee costs $2.50. {Name1} spent $17.50. How many coffees did he buy?' // , '(2.5*{RandomQuantity})', ''] //['An adult bus ticket costs $6.50 and a child ticket costs $4. How much would 2 adults and 5 children cost to take the bus?' // , '(({RandomQuantity}/2)*3)','cm2'], ]; $RandomQuantity = sprintf("%01.1f", (float) rand(100, (int) ($this->diff / 6) * 100) / 100); $SelectedQuestionNo = array_rand($Quests); $SelectedNameNo = array_rand($names); $returnQuestion = str_replace('{RandomQuantity}', $RandomQuantity, str_replace('{Name1}', $names[$SelectedNameNo], $Quests[$SelectedQuestionNo][0])); $returnAnswer = str_replace('{RandomQuantity}', $RandomQuantity, $Quests[$SelectedQuestionNo][1]); $solvedAnswer = eval('return ' . $returnAnswer . ';'); $this->FormattedQuestionForm .= e107::getForm()->label($returnQuestion) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', $solvedAnswer.$Quests[$SelectedQuestionNo][2]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $returnQuestion) . "\n"; } } class MathYearTwo { // Todo finish questions public $enabled = true; public $FormattedQuestionForm; private $diff = 0; function __construct() { $sql = e107::getDb(); $userName = e107::getUser()->getLoginName(); $this->diff = $sql->retrieve('timekeeperStats', 'timekeeper_percent', 'timekeeper_username="' . $userName . '" AND timekeeper_yearLevel=1'); //print_a([$this->diff,'e107_timekeeperStats', '*', 'timekeeper_username="' . $userName . '"']); if (!isset($this->diff)) { $this->diff = 20; } } public function RandomQuestion() { $methods = preg_grep('/[^RandomQuestion]/', get_class_methods($this)); $RandomEnglishType = rand(2, count($methods)); $function = $methods[$RandomEnglishType]; //print_a(['FunctionName'=>'RandomQusetion','Methods'=>$methods,'RandomSelectionNo'=>$RandomEnglishType,'CurrentSelection'=>$function]); return $this->$function(); } private function Time() { $this->FormattedQuestionForm .= e107::getForm()->label('Time.') . "\n"; $this->FormattedQuestionForm .= '
'; $firstNumber = rand(1, (int) ($this->diff / 4)); $secondNumber = rand(1, $firstNumber); $this->FormattedQuestionForm .= e107::getForm()->label($firstNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->label(" ÷ " . $secondNumber) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', (int) ($firstNumber / $secondNumber)) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $firstNumber . " ÷ " . $secondNumber . "=") . "\n"; } } ////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////// //////// English ////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////// class EnglishYearOne { // Todo finish questions public $enabled = false; public $FormattedQuestionForm; public function RandomQuestion() { $methods = preg_grep('/[^RandomQuestion]/', get_class_methods($this)); $RandomEnglishType = rand(1, count($methods)); $function = $methods[$RandomEnglishType]; $this->$function(); } private function Spelling() { include_once './resources/spellingLists.php'; //print_a($wordsList); $words = [ ['action', 'I like to watch action movies.'], ['actor', 'I thought the actor was good in that movie.'], ['actually', 'Did you actually think that would work.'], ['addition', 'Did you know addition is part of maths.'], ['agreed', 'I thought we agreed not to fight.'], ['allowed', 'Are you allowed to do that.'], ['aloud', 'Say your name out aloud.'], ['amendment', 'Do you know your first amendment rights.'], ['amount', 'What amount did you pay for that.'], ['amusement', 'Are you going on the amusement rides later.'], ['annual', 'Your birthday is an annual event.'], ['appointed', 'Do you know who the appointed prime minister is.'], ['arrange', 'Lets arrange to meet tomorrow afternoon.'], ['attention', 'Are you paying attention to what was just said.'], ['awhile', 'Could you wait awhile please.'], ['beginning', 'Did you understand the beginning of that movie.'], ['bruise', 'Did you get a bruise while playing sport.'], ['business', 'What kind of business would you like to open.'], ['calves', 'Did you see all the calves in the paddock.'], ['capital', 'Canberra is the capital city of Australia.'], ['capitol', 'The capitol building is where a legislature meets.'], ['captain', 'Did you see the captain of this ship.'], ['carefully', 'Walk down the stairs carefully so you don\'t fall.'], ['caught', 'The cat caught the mouse.'], ['cause', 'What do you think the cause of that is.'], ['celebrate', 'How do you want to celebrate your birthday.'], ['century', 'A century is one hundred years.'], ['chemical', 'What kind of chemical is lemon juice.'], ['chocolate', 'Would you like some chocolate ice cream.'], ['circle', 'Can you draw a circle neatly.'], ['climate', 'The weather is part of the climate.'], ['climbed', 'The hiker climbed up the hill.'], ['collar', 'My dog has a collar that he wears.'], ['column', 'Did you read the news column yesterday.'], ['company', 'What kind of company would you like to start.'], ['condition', 'What condition is your car in.'], ['consider', 'Would you consider this fun.'], ['consonant', 'The distinction between consonant and vowel is not always clear.'], ['constant', 'In math a constant is a number that is fixed and known.'], ['continent', 'A continent is one of several very large landmasses.'], ['continued', 'Was your story continued from the last one.'], ['country', 'Which country would you like to visit next.'], ['course', 'Lets go to the race course today.'], ['crystal', 'Check out that crystal vase in the shop.'], ['current', 'What is the current weather where you are.'], ['curtain', 'Coult you open the curtain to let some light in.'], ['daughter', 'Does your daughter like ice cream.'], ['daytime', 'Is it daytime where you are.'], ['decided', 'I thought we decided to watch the movie.'], ['decimal', 'Do not forget the decimal place when doing math.'], ['delicious', 'That was a delicious apple pie.'], ['desert', 'Do not desert your army unit.'], ['dessert', 'we made a dessert of chocolate mousse.'], ['details', 'You need to give more details so people understand.'], ['determine', 'You need to determine why that happened.'], ['dictionary', 'A dictionary lists words and their meanings.'], ['difference', 'Can you see the difference between the two dogs.'], ['different', 'Do you know which is the different picture.'], ['difficult', 'It is very difficult to copy a painting perfectly.'], ['direction', 'Are you sure this is the right direction to take.'], ['disappoint', 'You could disappoint me if you get this wrong.'], ['division', 'I am not very good at long division in math.'], ['eighth', 'This is the eighth day of the month.'], ['election', 'Who did you vote for in the election today.'], ['elements', 'Do you know the periodic table of elements in science.'], ['energy', 'Do you have the energy to participate in another race.'], ['enjoyment', 'Do you find enjoyment getting these answers right.'], ['equal', 'What is equal to one plus one.'], ['equation', 'A math equation can be fun to figure out.'], ['errands', 'What errands do you have to run today.'], ['exact', 'Please be exact with your answers.'], ['except', 'I have finished all the letters except one.'], ['expect', 'I expect you to get this question right.'], ['explain', 'Please explain yourself clearly.'], ['explode', 'Bombs can explode even when not set off.'], ['express', 'Did you send your letter via express post.'], ['factory', 'What happened at the toy factory today.'], ['fault', 'There was a fault in the manufacturing process.'], ['favorite', 'What is your favorite ice cream.'], ['finally', 'We finally finished all of out studies today.'], ['finished', 'We finally finished all of out studies today.'], ['forward', 'Pushing up on the control makes the car move forward.'], ['fought', 'You fought with your brother again.'], ['fraction', 'What fraction of your class is boys.'], ['furniture', 'Should we go to the furniture store today.'], ['future', 'I the future you will be better at this.'], ['general', 'The arrangements were outlined in very general terms.'], ['government', 'Most countries have a government to run them.'], ['graceful', 'The girl was very graceful as she moved across the room.'], ['graph', 'Did you see the bar graph at the convention.'], ['grasp', 'Do you have a grasp on the topic at hand.'], ['grease', 'You can use grease to lubricate machinery.'], ['grown-ups', 'I do not like it when grown-ups get all serious.'], ['guest', 'Would you show our guest to his room.'], ['guide', 'Did you follow the guide during the tour.'], ['happened', 'What happened to your knee.'], ['happily', 'He happily went to school this morning.'], ['harvest', 'The farmer was happy the harvest went well this year.'], ['healthy', 'The baby was healthy when he was born.'], ['height', 'What is the height of that tree over there.'], ['hoarse', 'The grumpy old man has a hoarse voice.'], ['human', 'Pet food is not fit for human consumption.'], ['idea', 'Do you have any idea how he got up there.'], ['imagine', 'Can you imagine how much fun that would be.'], ['include', 'Remember to include your brother when you are playing games.'], ['increase', 'Can you increase the temperature as I am feeling cold.'], ['indicate', 'Sales indicate a growing market for such art.'], ['information', 'What information do you need.'], ['instrument', 'What is your favorte musical instrument to play.'], ['intention', 'What is your intention with that foam sword.'], ['interesting', 'The news was very interesting today.'], ['inventor', 'Do you know the inventor that created the light bulb.'], ['island', 'Australia is the largest island in the world.'], ['jewel', 'She was the jewel of his eye.'], ['journey', 'I am embarking on a journey around the world.'], ['jungle', 'The tree tops of the jungle make a canopy.'], ['knives', 'I bought a block of knives from the home store.'], ['known', 'He was well known throughout the land.'], ['language', 'What other language do you speak.'], ['laughter', 'The audience bust into laughter while watching the comedian.'], ['length', 'How long was the length of string.'], ['limb', 'Did you break the tree limb while you were climbing it.'], ['located', 'Where is the school located on the map.'], ['lumber', 'We went to the lumber yard to buy some wood.'], ['major', 'The use of drugs is a major problem.'], ['mammal', 'Did you know every mammal is warm blooded.'], ['manufacture', 'Do you know where they manufacture those toys.'], ['material', 'What material is her dress made of.'], ['mayor', 'Did you see the mayor of the city.'], ['measure', 'You can use a ruler to measure things.'], ['melody', 'Can you play a melody on the flute.'], ['members', 'Do you know who the members of parliment are.'], ['memories', 'Do you have good memories of your last holiday.'], ['message', 'What message would you like to pass.'], ['method', 'What method do you use to remember things.'], ['million', 'I would love to have one million dollars.'], ['minor', 'That was only a minor car crash.'], ['modern', 'Do you like modern art.'], ['mountain', 'Can you see the mountain in the distance.'], ['music', 'What kind of music do you like.'], ['natural', 'Carrots contain a natural antiseptic.'], ['necessary', 'The council granted the necessary planning permission.'], ['neither', 'He didn\'t remember, and neither did I.'], ['newspaper', 'The local newspaper had the story.'], ['northern', 'The cliff protects the bay from the northern winds.'], ['notebook', 'Make sure you write it down in your notebook so you don\'t forget.'], ['notice', 'The jobs were advertised in a notice posted in the newspaper.'], ['noun', 'Example of a noun is a "toothbrush".'], ['numeral', 'Do you know what the roman numeral "X" stands for.'], ['object', 'Disease became the object of investigation.'], ['observe', 'Shouldn\'t you observe what the teacher is showing.'], ['opposite', 'Whats the opposite of left.'], ['orphan', 'An orphan is a child without parents.'], ['ought', 'Five minutes ought to be enough time,'], ['outside', 'Do you want to go outside to play.'], ['oxygen', 'There is oxygen in the air we breathe.'], ['paid', 'I paid the bill using my key card.'], ['paint', 'Could you help me paint the house.'], ['paragraph', 'Did you read the whole paragraph of the story.'], ['pattern', 'What pattern is that on your shirt.'], ['pause', 'Can you pause your movie for a minute to help me.'], ['payment', 'How did you make the payment while shopping.'], ['perhaps', 'Would you perhaps consent to act as our guide.'], ['period', 'The Cretaceous period was a time that dinosaurs existed.'], ['permit', 'Some places require a parking permit to park there.'], ['phone', 'Did someone call your phone just now.'], ['phrase', 'Could you repeat that phrase again.'], ['pleasant', 'Try to be pleasant when talking to people.'], ['pleasure', 'She smiled with pleasure at being praised.'], ['plural', 'The plural of a word eans there is more than one.'], ['poison', 'Be careful as there is poison in that bottle.'], ['position', 'What position would you like to play as.'], ['possible', 'I did not think that was possible in this game.'], ['practice', 'You need lots of practice to get good at things.'], ['prepared', 'Make sure you are well prepared for the test later.'], ['president', 'Do you know who is the president of the European Union.'], ['probably', 'She would probably never see him again.'], ['problem', 'What seems to be the problem that you are experiencing.'], ['process', 'The manufacturing process is relatively simple.'], ['produce', 'The produce of a farm is fruit and vegetables.'], ['program', 'An extensive program of reforms.'], ['promise', 'I promise to do my studies later.'], ['property', 'She wanted Oliver and his property out of her flat.'], ['protection', 'Make sure you have protection on when you go out to play.'], ['provide', 'Can you provide more details please.'], ['puzzle', 'Did you solve the puzzle yesterday.'], ['quickly', 'Can you quickly answer the question.'], ['quietly', 'Can you quietly answer the question.'], ['radio', 'What radio station are you listening to.'], ['raise', 'You can raise chickens for eggs.'], ['rarely', 'You rarely find gold on the ground.'], ['rather', 'She has been behaving rather strangely.'], ['reached', 'The boy reached out to catch the ball.'], ['receive', 'Did you receive your letter of approval.'], ['record', 'We should record a song together.'], ['region', 'What region do you live in.'], ['relax', 'Try to relax at the spa later.'], ['remain', 'Try to remain impartial in the debate.'], ['remove', 'Can you remove your toys from the kitchen.'], ['repay', 'Just repay me when you get the money.'], ['repeat', 'Can you repeat what you just said.'], ['report', 'What did your school report say.'], ['represent', 'The lawyer can represent you in court.'], ['respond', 'Please respond when someone speaks to you.'], ['result', 'What is the result of the test.'], ['rhythm', 'Do you like the rhythm of this song.'], ['rising', 'I think the tide is rising quickly.'], ['ruin', 'Do not drag your feet or you will ruin your shoes.'], ['salad', 'Would you like some salad with dinner.'], ['sandal', 'A sandal is a type of open toed shoe.'], ['scale', 'I found a scale in my fish soup.'], ['scent', 'A flowers scent can be beautiful.'], ['schedule', 'The train follows a strict schedule of stops.'], ['science', 'Do you like science at school.'], ['section', 'What section of the class are you in.'], ['separate', 'Keep the ingredients separate until you are told to mix them.'], ['service', 'We need to send the car for service later today.'], ['settled', 'When the class settled the teacher started teaching.'], ['several', 'When several students misbehave the teacher gets mad.'], ['shadow', 'A sundial uses a shadow to tell the time.'], ['shelter', 'We better get to shelter before the storm get here.'], ['shoulder', 'The man carried the log on his shoulder because it was heavy.'], ['shouted', 'The man shouted at the kids to stay out of the worksite.'], ['shower', 'Remember to have a shower before going to bed.'], ['signal', 'Remember to signal when turning the corner.'], ['similar', 'That bike looks similar to yours.'], ['sincerely', 'I sincerely hope you get this right.'], ['single', 'She wrote down every single word.'], ['size', 'What size clothes do you wear.'], ['slippery', 'Be careful as the shower is slippery when wet.'], ['soar', 'The eagle can soar high in the sky.'], ['soil', 'The farmer needed to order more soil for his farm.'], ['solution', 'The solution to the puzzle is on the back page.'], ['solve', 'Can you solve that puzzle.'], ['southern', 'Australia is in the southern hemisphere.'], ['split', 'The man used the axe to split the wood.'], ['spoiled', 'What a spoiled little brat.'], ['sports', 'What sports do you like to play.'], ['square', 'Is that a square or a triangle.'], ['squeeze', 'Do you like to squeeze the juice out of oranges.'], ['stain', 'Be careful as chocolate can stain very badly.'], ['state', 'Do you know what state you live in.'], ['statement', 'The police gave a statement about crime.'], ['station', 'The trian stopped at the station to pick up passengers.'], ['steer', 'The driver can steer the car around.'], ['stomach', 'My stomach is painful after eating too much.'], ['stopping', 'Caution, frequently stopping vehicle.'], ['straight', 'I can see straight down the road.'], ['straighten', 'I got the hair dresser to straighten my hair.'], ['stream', 'I like to sit by the stream and read a book.'], ['stretched', 'Wear your jumper properly so it doesn\'t get stretched further.'], ['suggest', 'I suggest you pay attention to your studies.'], ['suitcase', 'Have you packed your suitcase for the trip.'], ['sunset', 'I would live to watch the sunset over the ocean.'], ['supply', 'The army supply depot ran out of bullets.'], ['sure', 'Are you sure you want to do that.'], ['surface', 'The surface of the salt lake is very flat.'], ['surprise', 'The announcement came as a complete surprise to all of us.'], ['surround', 'The army tried to surround the enemy.'], ['sweater', 'It is cold outside, you should put your sweater on.'], ['syllable', 'Can you name a two syllable word.'], ['syrup', 'What kind of syrup would you like on your pancakes.'], ['tablet', 'Do you like using a tablet computer.'], ['tasty', 'Would you like a bite of my tasty pie.'], ['teaspoon', 'Could you get a teaspoon for my coffee please.'], ['terrible', 'Your brother can make a terrible mess at times.'], ['though', 'You will be informed of its progress, slow though that may be.'], ['thoughtful', 'That was a very thoughtful gift to give.'], ['thrown', 'The ball was thrown into the play area.'], ['tornado', 'The tornado destroyed alot of houses.'], ['toward', 'Move toward your brother so we can take the photo.'], ['traffic', 'The traffic down town is quite busy.'], ['trail', 'Please keep to the trail while bush walking.'], ['treasure', 'The treasure map has a big "X" on it.'], ['treatment', 'You may need to go to hospital for treatment of your injuries.'], ['triangle', 'A triangle is a shape that has three sides.'], ['trouble', 'Try to stay out of trouble while playing.'], ['tunnel', 'The train goes through a tunnel to cross the mountian.'], ['type', 'What type of food do you like to eat.'], ['understood', 'I hope you understood the directions.'], ['unknown', 'Exploration into unknown territory can be exciting.'], ['usually', 'I usually go to the shops early in the morning.'], ['value', 'What is the value of your house.'], ['various', 'There are various ways to learn.'], ['warn', 'Did you warn your friends about the wasp nest.'], ['weigh', 'Can you weigh yourself on the scales.'], ['weight', 'What is your weight on the scales.'], ['weird', 'Thats a weird way to do things.'], ['western', 'There will be showers in some western areas.'], ['whisper', 'Can you whisper the answer to me.'], ['whoever', 'Thank you whoever you are.'], ['whole', 'Would you like a whole apple.'], ['whose', 'I wonder whose shoes those are.'], ['wives', 'The wives went shopping together.'], ['women', 'The women had a meet up at the local coffee shop.'], ['wonderful', 'It is a wonderful day outside.'], ['wound', 'The guy had a gun wound after he was shot.'], ['wreck', 'We are going diving at the ship wreck.'], ['x-ray', 'Did they x-ray your broken arm.'], ['yesterday', 'What did you do yesterday after school.'], ]; // $words = [ // ['Actor','The movie had some good actors in it.'], // ['addition','Can you do addition.'], // ['advice','Can I give you some advice on how to beat the game.'], // ['against','Today you will be playing against a team.'], // ['ahead','If you study hard you can get ahead of your class.'], // ['amount','What is the amount of money you need to buy something.'], // ['annual','Christmas is an annual event.'], // ['answer','You need to answer this question.'], // ['apiece','The cupcakes are two dollars apiece.'], // ['argue','You should not argue with your parents.'], // ['author','Did you see who the author of that book is.'], // ['avoid','You should avoid making mistakes.'], // ['beetle','There was a beetle in the garden.'], // ['borrow','Can I borrow your book.'], // ['breath','Take a deep breath and calm down.'], // ['calm','Keep calm while talking to people.'], // ['canal','Can you see all the water in the canal.'], // ['cannon','The army has a big cannon.'], // ['central','The post office is in a central location.'], // ['charge','You need to charge your phone.'], // ['collar','Your shirt has a collar.'], // ['continue','Can you continue reading your book.'], // ['creation','What kind of creation are you working on.'], // ['cried','I cried when my brother hit me.'], // ['daily','The daily paper had some bad news in it.'], // ['decorator','The decorator did a good job with this room.'], // ['device','A tape measure is a device used for measuring lenghts.'], // ['direction','Which direction is north.'], // ['earthquake','The earthquake was very scary.'], // ['enough','When you have had enough to eat you may leave the table.'], // ['excuse','You need a better excuse to get out of studying.'], // ['fraction','Your math has one more fraction left until its finished.'], // ['furniture','The furniture shop sells some nice tables.'], // ['ghost','The ghost scared everyone that night.'], // ['guess','Try to guess what im holding behind my back.'], // ['ignore','When someone calls you names just ignore them.'], // ['island','There is an island just off the coast.'], // ['journal','You can keep a journal of things you have done.'], // ['judge','You should be able to judge how far away the car is.'], // ['kept','He kept his promise to play after school.'], // ['ledge','Please stay away for the ledge so you dont fall off.'], // ['lettuce','Would you like lettuce on your burger.'], // ['manage','If you manage to finish your studies you can play.'], // ['mention','Dont mention to your friends about the movie on tonight.'], // ['narrate','You need to narrate the movie we are making.'], // ['nineteen','Runner nineteen won the race.'], // ['noisy','The neighbours can be very noisy at times.'], // ['often','Try not to make mistakes too often.'], // ['palm','Palm trees like to grow near the beach.'], // ['people','There are lots of people at the station.'], // ['portion','You can have a portion of the pie for dinner.'], // ['praise','The teacher will praise you if you do a good job.'], // ['remark','The teacher left a remark on my report card.'], // ['repair','The mechanic knows how to repair the car.'], // ['royal','The queen is part of the royal family.'], // ['shear','Do you know how to shear a sheep.'], // ['slept','The baby slept most of the day.'], // ['station','The train stops at the station to pick up passengers.'], // ['steam','The steam engine runs on steam.'], // ['strange','Its strange that you dont like sweets.'], // ['stretch','Can you stretch up and reach the roof.'], // ['sweat','It so hot outside that it will make you sweat.'], // ['terrible','Sometimes little borthers and sisters can make a terrible mess.'], // ['themselves','Some people only think of themselves.'], // ['thirsty','If you dont drink you will be thirsty.'], // ['throne','The queen sits on a throne.'], // ['tried','I tried to study hard.'], // ['trouble','If you dont do as you ar told you will get into trouble.'], // ['understand','If you dont understand what I said then I can repeat it.'], // ['until','You must study until you understand the subject.'], // ['vacation','The vacation we had in asia was fun.'], // ['visitor','If you go to see someone at their house you are a visitor.'], // ['vocal','If someone shares their opinion they are being vocal.'], // ['wander','If you wander aroud the shopping centre you may get lost.'], // ['weave','Do you know how to weave a basket.'], // ['whenever','You can ask for help whenever you need it.'], // ['whole','Can you really put the whole fork in your mouth.'], // ]; // $words = ['add', 'after', 'again', 'any', 'apple', 'arm', 'banana', 'bark', 'been', 'being', 'bent', 'best', 'bone', 'black', 'block', 'blue', 'bring', 'brown', 'bush', 'came', 'cane', 'card', 'cart', 'case', 'chain', 'chair', 'chalk', 'chat', 'chin', 'chop', 'clam', 'clan', 'clap', 'claw', 'clay', 'clean', 'cool', 'dark', 'desk', 'drop', 'end', 'family', 'fang,fast', 'fell', 'few', 'fill', 'flag', 'flat', 'fool', 'foot', 'fort', 'free', 'fresh', 'from', 'glad', 'golf', 'gone', 'grit', 'hand', 'hang', 'happy', 'harm', 'help', 'here', 'hide', 'hill', 'hint', 'hope', 'horn', 'how', 'ill', 'into', 'jaw', 'joke', 'just', 'keep', 'king', 'last', 'line', 'look', 'luck', 'made', 'many', 'meal', 'must', 'nice', 'new', 'next', 'odd', 'put', 'quit', 'rang', 'space', 'said', 'time', 'was', 'yard', 'yarn', // 'baseball', 'brother', 'can\'t', 'clover', 'cloud', 'crayon', 'club', 'coat', 'come', 'cookie', 'could', 'crow', 'cube', 'cupcake', 'deal', 'dew', 'didn\'t', 'dime', 'dine', 'dirt', 'doll', 'don\'t', 'door', 'draw', 'dream', 'dress', 'drink', 'dull', 'each', 'east', 'easy', 'eight', 'eleven', 'every', 'father', 'field', 'fine', 'first', 'flew', 'flower', 'friend', 'globe', 'going', 'grape', 'grass', 'grew', 'heavy', 'I\'m', 'it\'s', 'know', 'marker', 'maybe', 'milk', 'morning', 'mother', 'myself', 'much', 'never', 'notebook', 'other', 'over', 'paper', 'pencil', 'pretty', 'rabbit', 'school', 'seven', 'sew', 'shirt', 'sister', 'smell', 'stray', 'string', 'summer', 'start', 'swing', 'table', 'thank', 'thrift', 'twelve', 'twist', 'under', 'very', 'water', 'were', 'where', 'won\'t', 'yellow', 'zebra', 'zero', // 'always', 'animal', 'around', 'because', 'before', 'believe', 'between', 'bread', 'bright', 'busy', 'cannot', 'caught', 'charge', 'clapped', 'clean', 'chicken', 'children', 'doctor', 'does', 'goes', 'everyone', 'everywhere', 'flight', 'inside', 'juice', 'kitchen', 'laughter', 'lunchroom', 'nobody', 'once', 'orange', 'outside', 'piece', 'purple', 'raise', 'round', 'shoes', 'today', 'used', 'weak', 'week', 'whale', 'which', 'while', 'wool', 'yesterday']; //$RandomEnglishWord = $words[rand(1, count($words))]; $RandomEnglishWord = $words[array_rand($words)]; //exec('espeak -ven+f3 -k5 -s125 -w"./audio/'.$RandomEnglishWord[0].'.wav" "Spell the word, '.$RandomEnglishWord[0].'. '.$RandomEnglishWord[1].'"'); //./audio/flite-2.0.0-release/bin/flite -voice ./audio/voices/cmu_us_aew.flitevox -o "./audio/'.$RandomEnglishWord[0].'.wav" "Spell the word, '.$RandomEnglishWord[0].'. '.$RandomEnglishWord[1].'"'); exec('./audio/flite-2.0.0-release/bin/flite -voice ./audio/voices/cmu_us_aew.flitevox -o "./audio/' . $RandomEnglishWord[0] . '.wav" "Spell the word, ' . $RandomEnglishWord[0] . '. ' . $RandomEnglishWord[1] . '"'); //print_a([exec('ls ./audio/'),$RandomEnglishWord]); $this->FormattedQuestionForm .= " "; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]); $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', $RandomEnglishWord[0]); $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1); $this->FormattedQuestionForm .= e107::getForm()->hidden('question', "Spell the word " . $RandomEnglishWord[0] . ""); } } class EnglishYearTwo { // Todo finish questions public $enabled = false; public function RandomQuestion() { $methods = preg_grep('/[^RandomQuestion]/', get_class_methods($this)); $RandomEnglishType = rand(1, count($methods)); $function = $methods[$RandomEnglishType]; $this->$function(); } //centry //mellenium etc... private function Nouns() { $this->FormattedQuestionForm .= e107::getForm()->label('Nouns.') . "\n"; $this->FormattedQuestionForm .= '
'; $firstNumber = rand(1, (int) ($this->diff / 4)); $secondNumber = rand(1, $firstNumber); $divNumber = $firstNumber * $secondNumber; $this->FormattedQuestionForm .= e107::getForm()->label($divNumber) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->label(" ÷ " . $secondNumber) . "\n"; $this->FormattedQuestionForm .= '
'; $this->FormattedQuestionForm .= e107::getForm()->text('q1', '', 80, ['placeholder' => 'Write answer here!', 'autocomplete' => "off"]) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('a1', (int) ($divNumber / $secondNumber)) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('qc1', 1) . "\n"; $this->FormattedQuestionForm .= e107::getForm()->hidden('question', $divNumber . " ÷ " . $secondNumber . "=") . "\n"; } private function SingularPluralNouns() { } private function CountableUncountableNouns() { } private function Pronouns() { } private function Possession() { } private function Agreement() { } private function Adjectives() { } private function ComparisonOfAdjectives() { } private function DefiniteIndefiniteArticles() { } private function SomeAndAny() { } private function FormsOfVerbs() { } private function TheVerbToBe() { } private function SimplePresentTense() { } private function PresentConttinuousTense() { } private function PresentPerfectTense() { } private function SimplePastTense() { } private function PastContinuousTense() { } private function SimpleFutureAndGoingToForm() { } private function ConditionalIf() { } private function Adverbs() { } private function ComparisonOfAdverbs() { } private function JoiningSentences() { } private function Conjuctions() { } private function PositiveNegativeSentences() { } private function ShortForms() { } private function QuestionWords() { } private function QuestionTags() { } private function ShortAnswersReplies() { } private function Prepositions() { } private function Punctuation() { } } // // check to see if a question has been correct 10 time in a row and then perfere it less. class Question_Engine_2 { public $QuestionArray; //////////////////////////////////////////////////////////////////////////// /// Construct and main entry point. //////////////////////////////////////////////////////////////////////////// // Construct Question_Engine inital values public function __construct($subject, $difficulty) { // Set QuestionArray array and subject as first value $this->QuestionArray = ['subjectMajor' => $subject]; // Add difficulty to QuestionArray $this->QuestionArray['difficulty'] = $difficulty; } // Main entry point to the question generator. public function generate() { $tmp = ['test' => $this->generalKnowledge(),]; $tmp['test']; // Call sub question generator for major subject switch ($this->subject) { // Call question fetcher directly as there is no sub sections case "general": $this->generalKnowledge(); break; // Call sub generate to select a minor subject case "math": $this->subGenerateMath(); break; case "math": $this->subGenerateMath(); break; case "math": $this->subGenerateMath(); break; case "math": $this->subGenerateMath(); break; case "math": $this->subGenerateMath(); break; case "math": $this->subGenerateMath(); break; case "math": $this->subGenerateMath(); break; case "math": $this->subGenerateMath(); break; } // 'english' => 0, // 'pePd' => 0, //health-and-physical-education // 'socialStudies' => 0, //humanities-and-social-sciences // 'languages' => 0, // 'science' => 0, // 'technologies' => 0, // 'art' => 0, // Debug line TODO remove once tested. print_a(['subject' => $this->subject, 'difficulty' => $this->difficulty]); } //////////////////////////////////////////////////////////////////////////// /// Sub generate functions for minor subjects //////////////////////////////////////////////////////////////////////////// // private function subGenerateMath() { switch ($this->subject) { case $value: break; default: break; } print_a(['subject' => $this->subject, 'difficulty' => $this->difficulty]); } //////////////////////////////////////////////////////////////////////////// /// Raw question fetchers //////////////////////////////////////////////////////////////////////////// // Fetch and return question from DB questions private function generalKnowledge() { //array_rand($array); } //english (spelling) //english (syntax) //english (comprehention) private function math() { } private function mathGeneral() { } private function mathUnits() { } //science //technolegy //geography // }