Ir ao conteúdo

Posts recomendados

Postado

"Faça um algoritmo que receba três números. Os números devem ser armazenados em três variáveis com os seguintes nomes: MENOR, INTERMEDIÁRIO, MAIOR (suponha que os três números são diferentes)."

Comecei a fazer mais não sei como continuar, me ajudem por favor

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
#include<string.h>

int main ()
{
   int num1,num2,num3;
   char menor,intermediario,maior;

   printf("Digite 3 numeros diferentes \n");
   printf("Numero 1: ");
   scanf("%d", &num1);
   printf("Numero 2: ");
   scanf("%d", &num2);
   printf("Numero 3: ");
   scanf("%d", &num3);


}

 

Postado

Menor, intermediário e maior são números, devem ser do tipo "int":

int menor,intermediario,maior;

Depois você pode fazer as comparações e determinar quais números serão maiores e menores. Aqui um exemplo, que tentar verificar se num1 é o maior, o menor ou o intermediário - considerando que os três números são diferentes:

 if ((num1 > num2) && (num1 > num3)) maior = num1;
 else if ((num1 < num2) && (num1 < num3)) menor = num1;
 else intermediario = num1;

Tente fazer para os outros dois números.

Postado

Fiz algumas modificações e ficou assim, mas o problema agora é que o intermediario e o menor ficam trocados.

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<math.h>
#include<string.h>

int main ()
{

   int menor,intermediario,maior;
   int a, b, c;

   printf("Digite 3 numero diferentes \n");
   printf("Primeiro numero: ");
   scanf("%d", &a);
   printf("Segundo numero: ");
   scanf("%d", &b);
   printf("Terceiro numero: ");
   scanf("%d", &c);


    if ( a > b)
    {
        maior=a;
        menor=b;
        intermediario=c;

    }
    else
    {
        maior = b;
        menor = a;
        intermediario=c;
    }
    if (c > a)
    {
       maior=c;
       menor=a;
       intermediario=b;
    }
    else
    {
        maior=a;
        menor=c;
        intermediario=b;
    }
    if (b > c)
    {
        maior=b;
        menor=c;
        intermediario=a;
    }
    else
    {
        maior=c;
        menor=b;
        intermediario=a;
    }


    printf("maior: %d,intermediario: %d, menor: %d", maior , intermediario, menor);


   system("pause");
   return 0;
}

 

Postado
if ( a > b)
    {
        maior=a;
        menor=b;
        intermediario=c;

    }
    else
    {
        maior = b;
        menor = a;
        intermediario=c;
    }

Se a for maior que b, não significa que ele necessariamente é o maior, tampouco que b é o menor. Exemplo: a = 5, b = 3, c=10 - a é maior que b, mas o maior é c. Outro exemplo: a = 5, b = 3, c=1 - neste caso, a é o maior, mas b não é o menor.

você tem que comparar ao pares e verificar se a é maior que b e que c ao mesmo tempo:

if ((a > b) && (a > c)) 
{
  maior = a;
  if (b > c) 
  {
  	intermediario = b;
    menor = c;
  } else
  {
    intermediario = c;
    menor = b;
  }
}
 

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!