Условие
The Coleman-Liau index estimates the U.S. grade level for a text: index = 0.0588 × L − 0.296 × S − 15.8, where L is the average number of letters per 100 words and S the average number of sentences per 100 words. Letters are A–Z/a–z, words are separated by spaces, and each ., ! or ? ends a sentence. Round the index to the nearest whole number.
Implement readability_grade(text).
Input
text: English text with at least one word.
Output
Return "Before Grade 1" when the index is below 1, "Grade 16+" when it is 16 or more, otherwise "Grade N".
Ограничения
1 ≤ length ≤ 10,000
Примеры
Ввод:
text = "One fish. Two fish. Red fish. Blue fish."
Ожидаемый вывод:
expected = "Before Grade 1"
Ввод:
std::string text = "One fish. Two fish. Red fish. Blue fish.";
Ожидаемый вывод:
std::string expected = "Before Grade 1";
Ввод:
string text = "One fish. Two fish. Red fish. Blue fish.";
Ожидаемый вывод:
string expected = "Before Grade 1";
Пояснение
29 letters, 8 words and 4 sentences give an index below 1: "Before Grade 1".
Ввод:
text = "Harry Potter was a highly unusual boy in many ways. For one thing, he hated the summer holidays more than any other time of year. For another, he really wanted to do his homework, but was forced to do it in secret, in the dead of the night. And he also happened to be a wizard."
Ожидаемый вывод:
expected = "Grade 5"
Ввод:
std::string text = "Harry Potter was a highly unusual boy in many ways. For one thing, he hated the summer holidays more than any other time of year. For another, he really wanted to do his homework, but was forced to do it in secret, in the dead of the night. And he also happened to be a wizard.";
Ожидаемый вывод:
std::string expected = "Grade 5";
Ввод:
string text = "Harry Potter was a highly unusual boy in many ways. For one thing, he hated the summer holidays more than any other time of year. For another, he really wanted to do his homework, but was forced to do it in secret, in the dead of the night. And he also happened to be a wizard.";
Ожидаемый вывод:
string expected = "Grade 5";
Пояснение
The average word and sentence lengths give an index that rounds to 5: "Grade 5".
Ссылки
Это задание адаптировано для CodeUtility. Следуйте условию и ограничениям выше.