Lab 1#36
Conversation
| var gen = new PoolTaskGenerator(false, | ||
| new TextTask("Какая (по слухам) подработка у С*****ча?", "сборщик мусора"), | ||
| new TextTask("Как называется человек, убегающий от каннибала?", "фастфуд"), | ||
| new TextTask("Какой вид порно не могут снять бомжи?", "домашнее"), |
There was a problem hiding this comment.
сказали же захардкодить...
| boolean interactionFinished = false; | ||
| while (!interactionFinished) { | ||
| var query = inputLineNormalized(); | ||
| switch (query) { |
There was a problem hiding this comment.
Вот если бы у меня не было кода, я бы не узнал об этом никак. Про help & exit точно.
There was a problem hiding this comment.
фикс, выводится хелпа с самого начала
| default -> { | ||
| if (map.containsKey(query)) { | ||
| System.out.println("Starting quiz \"" + query + "\"!"); | ||
| Quiz clone; |
There was a problem hiding this comment.
Можно дать более осмысленное название.
| * Оценка выставляется только в конце! | ||
| */ | ||
| public double getMark() { | ||
| return (double)getCorrectAnswerNumber() / getTotalAnswerNumber(); |
There was a problem hiding this comment.
Ну так точно не должно быть. Оценка, которая является отношением количества правильных ответов к количеству всех вопросов.
| */ | ||
| GroupTaskGenerator(Iterable<TaskGenerator> generators) { | ||
| this.generators = new ArrayList<>(); | ||
| for (var gen : generators) { |
There was a problem hiding this comment.
Либо stream api, либо generators.forEach(this.generators::add).
| Collections.addAll(this.generators, generators); | ||
| } | ||
|
|
||
| public GroupTaskGenerator(TaskGenerator other, CopyParameter f) { |
| this(allowDuplicate, Arrays.stream(tasks).collect(Collectors.toList())); | ||
| } | ||
|
|
||
| public PoolTaskGenerator(TaskGenerator other, CopyParameter f) { |
| ) { | ||
| this.pool = new ArrayList<>(tasks); | ||
| this.allowDuplicate = allowDuplicate; | ||
| if (!allowDuplicate) { |
There was a problem hiding this comment.
Тут allowDuplicate должен проверить и на входе на одинаковые задачи.
| * значение - сам тест {@link by.toharrius.quizer.Quiz} | ||
| */ | ||
| private static @NotNull Map<String, Quiz> getQuizMap() { | ||
| var map = new HashMap<String, Quiz>(); |
There was a problem hiding this comment.
Можно дать более осмысленное название.
| } | ||
| default MathOperation generateMathOperation() { | ||
| var r = ThreadLocalRandom.current(); | ||
| int index = r.nextInt((int)getAllowed().stream().count()); |
|
Ну пока что такая оценка:
Допы:
В итоге 8.2. В остальном классная работа и хорошо, что подумал, что один и тот же тест, может быть вызван много раз. +3 за допы. |
No description provided.