parent
d429dcb895
commit
b76e99523e
@ -0,0 +1,37 @@
|
|||||||
|
package generator;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class JuniorHighGenerator extends BaseGenerator {
|
||||||
|
@Override
|
||||||
|
protected String createUniqueQuestion() {
|
||||||
|
int numOperands = random.nextInt(4) + 2;
|
||||||
|
|
||||||
|
List<String> operands = new ArrayList<>();
|
||||||
|
for (int i = 0; i < numOperands; i++) {
|
||||||
|
operands.add(String.valueOf(getRandomOperand()));
|
||||||
|
}
|
||||||
|
|
||||||
|
int specialIndex = random.nextInt(numOperands);
|
||||||
|
int originalValue = Integer.parseInt(operands.get(specialIndex));
|
||||||
|
|
||||||
|
if (random.nextBoolean()) {
|
||||||
|
operands.set(specialIndex, "sqrt(" + (originalValue * originalValue) + ")");
|
||||||
|
} else {
|
||||||
|
operands.set(specialIndex, originalValue + "^2");
|
||||||
|
}
|
||||||
|
|
||||||
|
StringBuilder questionBuilder = new StringBuilder();
|
||||||
|
String[] basicOperators = {"+", "-", "*"};
|
||||||
|
|
||||||
|
questionBuilder.append(operands.get(0));
|
||||||
|
for (int i = 1; i < numOperands; i++) {
|
||||||
|
String operator = basicOperators[random.nextInt(basicOperators.length)];
|
||||||
|
questionBuilder.append(" ").append(operator).append(" ").append(operands.get(i));
|
||||||
|
}
|
||||||
|
questionBuilder.append(" = ?");
|
||||||
|
|
||||||
|
return questionBuilder.toString();
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue