Escreva um algoritmo que receba 3 números e mostre eles em ordem crescente. Utilize o Portugol Studio
Soluções para a tarefa
Resposta: Linguagem JavaScript
let entradas = [ 31, 5, 25 ]
function ordenar ( numeros ) {
const comprimento = numeros.length
for ( let pos = 0 ; pos < comprimento ; pos++ ) {
for ( let pos_2 = 0 ; pos_2 < comprimento ; pos_2++ ) {
if ( numeros [ pos_2 ] > numeros [ pos_2 + 1 ] ) {
let temporario = numeros [ pos_2 ]
numeros [ pos_2 ] = numeros[ pos_2 + 1 ]
numeros [ pos_2 + 1 ] = temporario
}
}
}
return numeros
}
let resultado = ordenar ( entradas )
console.log( resultado )
Explicação:
-------------------ATENÇÃO-------------------------------
Este é o algoritmo chamado de Bubble Sort
Ele é o mais simples de se aprender,
porém um dos piores para a ordenação
no que diz respeito ao tempo de execução.
--------------------------------------------------------------------
1- defino uma lista de números que será
usada como um argumento pela função.
2- crio uma função que será executada, essa função recebe
uma parâmetro do tipo lista (array)
3- Defino uma variável chamada de COMPRIMENTO que armazena
o comprimento da lista.
4- Crio um laço de repetição do tipo FOR que roda enquanto de pos < comprimento.
5- Dentro desse laço, crio mais um laço do tipo FOR roda enquanto de pos_2 < comprimento.
6- Dentro do segundo laço de repetição, crio uma verificação.
Essa verificação checa se o item de posição pos_2 é MAIOR (>) que o item da posição seguinte (pos_2 + 1)
7- Se a verificação for verdadeira, ele realiza a troca das posições.
TROCA:
1 - Define uma variável temporária que receberá o valor da posição atual
2 - Troca o valor da posição atual para o valor da próxima posição
3 - Define o valor da próxima posição como o valor atual, que está armazenado na variável temporária
8- após o loop FOR, o valor da lista é retornado