Поскольку дроби по существу являются делениями, вы можете проверить, является ли ответ частично правильным, выполнив деление на введенных вами дробных записях.
[pseudocode]
if (answer.contains("/"))
int a = answer.substring(1,answer.instanceof("/"))
int b = answer.substring(answer.instanceof("/"))
if (a/b == expectedAnswer)
if (gcd(a,b) == 1)
GOOD!
else
Not sufficiently reduced
else
WRONG!
Чтобы выяснить, полностью ли она уменьшена, создайте функцию GCD, которая должна оценивать значение знаменателя, предоставленного пользователем в качестве ответа.