Почему последний раздел, Оценка, не рассчитывается? Я имею в виду, почему это не распространяется на последний раздел программы?
#include <stdio.h>
#include <cs50.h>
#include <string.h>
#include <math.h>
int main(void)
{
char text[1000];
int number = 0;
int words = 0, i;
int sentences = 0, j;
float l = ((number +1) / (words +1)) * 100;
float s = ((sentences+1) / (words+1)) * 100;
float index = (0.0588 * l) - 0.296 * s - 15.8;
// Text Input = Text //
printf("Text: ");
fgets(text, sizeof(text), stdin);
printf("%s", text);
// Letters = number //
number = strlen(text);
printf("%d letters\n", number);
// Words = words //
for (i = 0; text[i] != '\0'; i++)
{
if (text[i] == ' ' && text[i+1] != ' ')
words++;
}
printf("%d words\n", words);
// Sentences = sentences
for (j = 0; j < strlen(text); j++)
{if (text[j] == '.' || text[j] == '!' || text[j] == '?')
sentences++;
}
printf("%d sentences\n", sentences);
// grade level based on formula //
if (index >= 1 && index <= 16)
{
printf("Grade %f\n", index);
}
else
{
if (index < 1)
{
printf("Before Grade 1\n");
}
if (index > 16)
{
printf("Grade 16+\n");
}
}
}
Любая обратная связь будет иметь значение.
Я подозреваю, что это из-за целочисленных идентификаторов, присвоенных начальные переменные числа, слова и предложения, но я не знаю, как это исправить. Это только последняя часть оценки, которая мешает моему прогрессу и пониманию.