Секция итоговой оценки не работает в программе подсчета букв, слов и предложений - PullRequest
0 голосов
/ 15 апреля 2020

Почему последний раздел, Оценка, не рассчитывается? Я имею в виду, почему это не распространяется на последний раздел программы?

#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");
                    }
                }
        }

Любая обратная связь будет иметь значение.

Я подозреваю, что это из-за целочисленных идентификаторов, присвоенных начальные переменные числа, слова и предложения, но я не знаю, как это исправить. Это только последняя часть оценки, которая мешает моему прогрессу и пониманию.

...