Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ulfreitas

[Resolvido] tem outra forma de fazer esse algoritmo?

Recommended Posts

Boa tarde

Fiz esse algoritmo mas achei muito extenso, queria saber se tem como reduzir ele?

 

A proposta é a seguinte: Ler 3 numeros inteiros, mostrar na tela os numeros em ordem crescente.

Levando em consideração que a pessoa pode digitar, por exemplo: 1,2,3 / 2,1,3 / 3,2,1 .... há 6 variaçoes possiveis.

 

eu montei assim:

inicio
inteiro: n1,n2,n3; //declaraçao de variaveis
escreva("digite tres valores inteiros");
leia(n1,n2,n3); //normalmente eu pesso individualmente mas pra simplificar vou por assim

se ((n1<n2)e(n2<n3))entao
 escreva(n1,n2,n3);
 senao
 se ((n1<n3)e(n3<n2))entao
  escreva(n1,n3,n2);
  senao
  se ((n2<n1)e(n1<n3))entao
   escreva(n2,n1,n3);
   senao
   se ((n2<n3)e(n3<n1))entao
    escreva(n2,n3,n1);
    senao
    se ((n3<n1)e(n1<n2))entao
     escreva(n3,n1,n2);
     senao
     se ((n3<n2)e(n2<n1))entao
      escreva(n3,n2,n1);
     fimse
    fimse
   fimse
  fimse
 fimse
fimse
fim.

 

Foi assim que eu fiz, mas deve ter alguma forma de analisar os tres numeros e depois por em ordem crescente sem dar essas voltas todas, pq é um exercicio muito besta pra ficar desse tamanho.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

quitZAUMMM desculpa ter postado coisa repetida, da proxima vou usar a pesquisa prometo ;)

 

var //declaração variaveis
a, b, c, aux : inteiro
inicio

// Seção de Comandos 
escreva("digite 3 valores inteiros")
leia(a,b,c)
se a > b entao
 aux <- a
 a <- b
 b <- aux
fimse
se a > c entao
 aux <- a
 a <- c
 c <- aux
fimse
se b > c entao
 aux <- b
 b <- c
 c <- aux
fimse
escreva(a,b,c)
fimalgoritmo

achei esse bem mais facil, ja que nao aprendi a usar array ainda, array tá no próximo cap. do meu livro :lol: .

Passei ele pra portugol e funcionou certinho.

 

Obrigado pela dica

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.