lundi 22 mars 2021

Não consigo exibir o printf do else

Boa noite,

Preciso fazer um código que gere os resultados de quantos números vc digitou em determinados ranges. Caso a pessoa não digite nenhum valor, ou seja, digite o 0 (0 finaliza o código) precisa aparecer a mensagem "Atenção !!!! Você não digitou nenhum número.". Eu coloquei essa mensagem no else, mas não consigo que seja emitida.

Por gentileza, poderia me dizer onde estou errando?

O código abaixo:

/*

Programa: Classificação de números Objetivos: Classificar os números entre 1 e 9, 10 e 99, 100 e 999, 1000 e 10000, acima de 10000,

Autor: Fernando Vantini

*/

#include <stdio.h> #include <locale.h>

int main()

{

int valore, valorr1, valorr2, valorr3, valorr4, valorr5,  
somar1, somar2, somar3, somar4, somar5, media;

setlocale(LC_ALL, "portuguese");

valorr1 = 0;
valorr2 = 0;
valorr3 = 0;
valorr4 = 0;
valorr5 = 0;
somar1 = 0;
somar2 = 0;
somar3 = 0;
somar4 = 0;
somar5 = 0;


do
{
    printf("Digite números inteiros positivos ou, para finalizar o programa, digite 0(zero):");
    scanf("%d", &valore);
    
    if (valore < 0)
    {
        printf("Atenção!!! Você digitou um valor inválido. Digite outro valor \n"); 
    }
    else
    {
        if(valore >=1 && valore <=9)
        {
            somar1 = somar1 + valore;
            valorr1 = valorr1 + 1;
            
        }
        else
        {
            if(valore >= 10 && valore <=99)
            {
                somar2 = somar2 + valore;
                valorr2 = valorr2 + 1;  
            }
            else
            {
                if(valore >=100 && valore<=999)
                {
                    somar3 = somar3 + valore;
                    valorr3 = valorr3 + 1;
                }
                else
                {
                    if(valore >= 1000 && valore <=10000)
                    {
                        somar4 = somar4 + valore;
                        valorr4 = valorr4 + 1;
                    }
                    
                    else
                    {
                        if (valore > 10000)
                        {
                            somar5 = somar5 + valore;
                            valorr5= valorr5 + 1;
                        }
                    }
                }
            }
        }
    }
} while (valore != 0);

media = (somar1 + somar2 + somar3 + somar4 + somar5) / (valorr1 + valorr2 + valorr3 + valorr4 + valorr5);

if (media != 0 )
{
    printf("\nVocê digitou %d entre 1 e 9 \n", valorr1);
    printf("Você digitou %d entre 10 e 99 \n", valorr2);
    printf("Você digitou %d entre 100 e 999 \n", valorr3);
    printf("Você digitou %d entre 1000 e 10000 \n", valorr4);
    printf("Você difitou %d acima de 10000 \n", valorr5);
    printf("A média dos valores que foi digitado é: %d", media);
}
else
{
    printf("Atenção !!!! Você não digitou nenhum número.");
    
}

}

Aucun commentaire:

Enregistrer un commentaire