Easy level
This level will only have simple sequences, all answers are guaranteed to have at most 3 digits. If you want to select which tests are used, you can set up a custom exercise.
} elseif( $_GET['quickselect'] == 'sequence_medium' ) { $level = 'Medium'; $_GET['minExampleSequenceLength'] = 5; // $_GET['maxAddSubValue'] = 6; // $_GET['maxMultDivValue'] = 7; $_GET['maxAnswerLength'] = 4; $_GET['useTwoOperations'] = "on"; $_GET['usePrimeDifference'] = "on"; $_GET['useSquaresDifference'] = "on"; $_GET['useTwoSequences'] = "on"; $_GET['useFractions'] = "on"; $_GET['useFractionsAlternatingSigns'] = "on"; $_GET['useTwoTermSingleOperand'] = "on"; ?>Medium level
This level has medium hard exercises; this is harder than the basic because the answers will have at most 4 digits. If you want to select which tests are used, you can set up a custom exercise.
} elseif( $_GET['quickselect'] == 'sequence_hard' ) { $level = 'Hard'; $_GET['minExampleSequenceLength'] = 5; // $_GET['maxAddSubValue'] = 6; // $_GET['maxMultDivValue'] = 7; $_GET['maxAnswerLength'] = 4; $_GET['useTwoOperations'] = "on"; $_GET['usePrimeDifference'] = "on"; $_GET['useSquaresDifference'] = "on"; $_GET['useTwoSequences'] = "on"; $_GET['useFractions'] = "on"; $_GET['useFractionsAlternatingSigns'] = "on"; $_GET['useTwoTermSingleOperand'] = "on"; $_GET['useThreeSequence'] = "on"; $_GET['useThreeSequenceAlternatingSigns'] = "on"; ?>Hard level
This level has harder exercises, the answers will have at at most 4 digits. If you want to select which tests are used, you can set up a custom exercise.
} elseif( $_GET['quickselect'] == 'sequence_all' ) { $level = 'Hard+'; $_GET['minExampleSequenceLength'] = 5; // $_GET['maxAddSubValue'] = 6; // $_GET['maxMultDivValue'] = 7; $_GET['maxAnswerLength'] = 4; $_GET['useTwoOperations'] = "on"; $_GET['usePrimeDifference'] = "on"; $_GET['useSquaresDifference'] = "on"; $_GET['useTwoSequences'] = "on"; $_GET['useFractions'] = "on"; $_GET['useFractionsAlternatingSigns'] = "on"; $_GET['useTwoTermSingleOperand'] = "on"; $_GET['useThreeSequence'] = "on"; $_GET['useThreeSequenceAlternatingSigns'] = "on"; $_GET['useNumberEngLength'] = "on"; $_GET['useEngWordLength'] = "on"; $_GET['useMonthsFirstLetter'] = "on"; $_GET['useAsciiOrd'] = "on"; $_GET['usePerDigitSequence'] = "on"; $_GET['useThreeDigitPattern'] = "on"; ?>Hard level + non math sequences
This has more possible exercises than the hard level. The answers can have at most 4 digits. If you want to select which tests are used, you can set up a custom exercise.
} elseif( $_GET['quickselect'] == 'custom' ) { $_GET['showSetup'] = 'on'; } else { $generateTest = false; echo 'Invalid quick select: ' . $_GET['quickselect']; } } // Clean start default variables if( ! isset( $_GET['posted'] ) ) { $_GET['showSetup'] = 'on'; } // Generate test? if( $generateTest ) { // Normalize values if( ! isset( $_GET['questionCount'] ) || ! is_numeric( $_GET['questionCount'] ) || $_GET['questionCount'] <= 0 || $_GET['questionCount'] > 250 ) { $_GET['questionCount'] = 25; } if( ! isset( $_GET['minExampleSequenceLength'] ) || ! is_numeric( $_GET['minExampleSequenceLength'] ) || $_GET['minExampleSequenceLength'] <= 0 || $_GET['minExampleSequenceLength'] > 10 || $_GET['minExampleSequenceLength'] > count($primes) ) { $_GET['minExampleSequenceLength'] = 4; } if( ! isset( $_GET['maxAddSubValue'] ) || ! is_numeric( $_GET['maxAddSubValue'] ) || $_GET['maxAddSubValue'] <= 0 || $_GET['maxAddSubValue'] > 9999 ) { $_GET['maxAddSubValue'] = 9; } if( ! isset( $_GET['maxMultDivValue'] ) || ! is_numeric( $_GET['maxMultDivValue'] ) || $_GET['maxMultDivValue'] <= 1 || $_GET['maxMultDivValue'] > 9999 ) { $_GET['maxMultDivValue'] = 9; } if( ! isset( $_GET['minExampleSequenceLength'] ) || ! is_numeric( $_GET['minExampleSequenceLength'] ) || $_GET['minExampleSequenceLength'] <= 0 || $_GET['minExampleSequenceLength'] > 10 ) { $_GET['minExampleSequenceLength'] = 5; } if( ! isset( $_GET['maxAnswerLength'] ) || ! is_numeric( $_GET['maxAnswerLength'] ) || $_GET['maxAnswerLength'] <= 0 || $_GET['maxAnswerLength'] > 20 ) { $_GET['maxAnswerLength'] = 3; } if( ! isset( $_GET['minStartValue'] ) || ! is_numeric( $_GET['minStartValue'] ) || $_GET['minStartValue'] <= 0 || $_GET['minStartValue'] > 9999 ) { $_GET['minStartValue'] = 1; } if( ! isset( $_GET['maxStartValue'] ) || ! is_numeric( $_GET['maxStartValue'] ) || $_GET['maxStartValue'] <= 0 || $_GET['maxStartValue'] > 9999 ) { $_GET['maxStartValue'] = 17; } if( $_GET['maxStartValue'] < $_GET['minStartValue'] ) { $_GET['minStartValue'] = 1; $_GET['maxStartValue'] = 17; } if( ! isset( $_GET['mode'] ) || ( $_GET['mode'] != 'test' && $_GET['mode'] != 'practice' ) ) { $_GET['mode'] = 'practice'; } if( ! isset( $_GET['useTwoOperations'] ) && ! isset( $_GET['usePrimeDifference'] ) && ! isset( $_GET['useSquaresDifference'] ) && ! isset( $_GET['useTwoSequences'] ) && ! isset( $_GET['useFractions'] ) && ! isset( $_GET['useFractionsAlternatingSigns'] ) && ! isset( $_GET['useTwoTermSingleOperand'] ) && ! isset( $_GET['useThreeSequence'] ) && ! isset( $_GET['useThreeSequenceAlternatingSigns'] ) && ! isset( $_GET['useNumberEngLength'] ) && ! isset( $_GET['useEngWordLength'] ) && ! isset( $_GET['useMonthsFirstLetter'] ) && ! isset( $_GET['useAsciiOrd'] ) && ! isset( $_GET['usePerDigitSequence'] ) && ! isset( $_GET['useThreeDigitPattern'] ) ) { $_GET['useTwoOperations'] = "on"; $_GET['usePrimeDifference'] = "on"; $_GET['useSquaresDifference'] = "on"; $_GET['useTwoSequences'] = "on"; $_GET['useFractions'] = "on"; $_GET['useFractionsAlternatingSigns'] = "on"; $_GET['useTwoTermSingleOperand'] = "on"; $_GET['useThreeSequence'] = "on"; $_GET['useThreeSequenceAlternatingSigns'] = "on"; $_GET['useNumberEngLength'] = "on"; $_GET['useEngWordLength'] = "on"; $_GET['useMonthsFirstLetter'] = "on"; $_GET['useAsciiOrd'] = "on"; $_GET['usePerDigitSequence'] = "on"; $_GET['useThreeDigitPattern'] = "on"; } // Show setup? if( isset( $_GET['showSetup'] ) ) { ?> Set up exerciseScoring
You get one point for every correct answer, unlike the math test there is no negative score.
Manual Unknown mode