1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Rodar programa criado em C

Discussão em 'Programação' iniciada por tec6223, 13 de Outubro de 2018. (Respostas: 10; Visualizações: 330)

  1. tec6223

    tec6223 Power Member

    Bom dia, criei um programa muito básico em C e quando o compilo e rodo ele apenas cumpre a primeira instrução (a que está sublinhada abaixo)

    Inseri o seguinte:
    int Alunos;
    int Rapazes;
    float prapazes;
    float praparigas;

    printf ("Insira o numero de alunos e o numero de rapazes da turma\n");
    scanf ("%d", &Alunos);
    scanf ("%d", &Rapazes);
    prapazes = Rapazes*100/ Alunos;
    praparigas = 100 - prapazes;
    }

    Alguém o que possa ter feito mal?
     
  2. wowmiguelfcp

    wowmiguelfcp Power Member

    Estás a fazer um scanf, tens que introduzir um número e carregar enter
     
  3. a instrucao scanf aguarda por um input do utilizador atraves do teclado. tens de digitar um valor para continuar (neste caso 2x). o valor que digitares fica associado as variaveis na instrucao.
     
  4. tec6223

    tec6223 Power Member

    Eu sei que tenho que dar um input e eu dou, mas depois as contas no fim, para saber as percentagens não acontecem
     
  5. tuniq

    tuniq What is folding?

    Tu não estás a imprimir o resultado das contas que fazes no final. Acrescenta um printf depois disso, para imprimir os valores de prapazes e praparigas.
     
  6. tec6223

    tec6223 Power Member

    Também já fiz isso, depois de ter colocado aqui a questão e os resultados aparecem todos:
    PRapazes =0
    PRaparigas =0
    Ou seja, ignora os inputs que indiquei
     
  7. wowmiguelfcp

    wowmiguelfcp Power Member

    Como estás a fazer o printf?
     

  8. estás a usar %f no printf dos resultados? printf("%f", prapazes);
     
  9. tec6223

    tec6223 Power Member

    Sim, estou a usar %f, já fiz essas alterações tb. Neste momento tenho assim:

    #include <stdio.h>
    void main ()

    {
    int NUMALUNOS, NUMRAPAZES;
    float PRAPAZES;
    float PRAPARIGAS;

    printf ("Insira o numero de alunos\n");
    scanf ("%d", &NUMALUNOS);
    printf ("Insira o numero de rapazes\n");
    scanf ("%d", &NUMRAPAZES);
    PRAPAZES = ((NUMRAPAZES/NUMALUNOS)*100);
    PRAPARIGAS = (100-PRAPAZES);
    printf ("A percentagem de rapazes é: %f\n", PRAPAZES);
    printf ("A percentagem de raparigas é: %f\n", PRAPARIGAS);
    }

    Agora faz os cálculos mas apenas da percentagem de raparigas (PRAPARIGAS), a percentagem de rapazes dá 0 (zero)
     
  10. tens a fórmula mal:
    PRAPAZES = ((NUMRAPAZES *100.0) / NUMALUNOS);
     
  11. tec6223

    tec6223 Power Member

    Obrigado, era mesmo isso
     

Partilhar esta Página