Ir para conteúdo
Fórum Script Brasil
  • 0

DUVIDA C++


charliebd

Pergunta

Olá, por favor se puderem me ajudar, o programa abaixo deveria entrar em um loop ate que eu digitasse 0. Mas ele finaliza assim que eu digito o primeiro numero. 

Obrigada. 

 

CÓDIGO

****************************************************************************************************************

#include <stdlib.h>
#include <stdio.h>
//#include <iostream.h>
#include <math.h>
#include <conio.h>

int num,m1,m2,m3;

main () {
    m1=0;
    m2=0;
    m3=0;
    
    do {//incia uma condição
        printf ("Digite numeros inteiros diferentes de zero:"); //pede ao usuário números inteiros diferente de zero
        scanf("%d",&num);
        if (num>m1){ //se o numero digitado for maior que o maior numero digitado anteriormente o programa entra no for
            m3=m2; //como o num e maior que m1, o m1 recebe o num e o valor que antes ocupava o m1 desce para o m2, e assim sucessivamente
            m2=m1;
            m1=num;}
            
            else {
                
                if(num>m2 && num<m1){ //condição onde o numero digitado e menor que o m1 e maior que o m2, assim:
                m3=m2; //o valor que antes pertencia o m2, agr desce para a posição do m3
                m2=num; //sendo o num maior que m2, m2 agora recebe num
                m1=m1;//o m1 continua inalterado por o valor digitado e menor que ele 
                }
                
                else {
                    if (num>m3 && num<m2){ //condição onde o numero maior que m3 e menor que m2
                    m3=num; //como a condição fala que o num e maior que m3, m3 agora recebe num 
                    m2=m2; //m2 fica inalterado
                    m1=m1;//m1 fica inalterado
                    }
                }
            }
        
    } while (num!=0 && num<0);
    
        printf ("O primeiro maior numero digitado e: %d\n",m1);
        printf ("O segundo maior numero digitado e: %d\n",m2);
        printf ("O terceiro maior numero digitado e: %d\n",m3);    
    

system ("pause");

    return 0;
}

 

*****************************************************************************************************************************

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...