Fazer uma função que:
ordene de tal forma que, ao final da função, A contenha o menor número e C o maior.
ordene de tal forma que, ao final da função, A contenha o menor número e C o maior.
Passo 1
O enunciado pede uma função que receba três variáveis (A, B e C) e, ao final, garanta que A tenha o menor valor, C o maior e B fique com o valor do meio.
Conteúdo: ordenação simples (sorting) de três elementos usando comparações e trocas (swap).
O que vamos precisar:
Conteúdo: ordenação simples (sorting) de três elementos usando comparações e trocas (swap).
O que vamos precisar:
- Entender como comparar dois valores (por exemplo,
). - Saber como trocar o valor de duas variáveis usando uma variável temporária.
Passo 2
Primeiro, focamos em colocar o menor valor em A.
Teoria: para comparar dois elementos usamos um “if”. Se A for maior que B ( ), então o menor está em B e o maior em A, então a gente troca.
Pseudocódigo:
Teoria: para comparar dois elementos usamos um “if”. Se A for maior que B (
Pseudocódigo:
if A > B then
temp = A
A = B
B = temp
end if
Agora A é, no mínimo, menor ou igual a B.
Passo 3
Depois, garantimos que A também seja menor que C.
Teoria: mesma ideia de comparação e swap, agora entre A e C.
Pseudocódigo:
Teoria: mesma ideia de comparação e swap, agora entre A e C.
Pseudocódigo:
if A > C then
temp = A
A = C
C = temp
end if
Agora A é definitivamente o menor dos três.
Passo 4
Por fim, sobra só garantir que B e C estejam na ordem certa, ou seja, B ≤ C.
Teoria: mais uma comparação e troca caso necessário.
Pseudocódigo:
Teoria: mais uma comparação e troca caso necessário.
Pseudocódigo:
if B > C then
temp = B
B = C
C = temp
end if
Pronto! A ≤ B ≤ C, ou seja, A é o menor, C o maior.
Resposta
Segue a função completa em pseudocódigo, usando LaTeX para as condições:
função ordenar3(A, B, C):
// Passo 1: A ≤ B?
se \(A > B\) então
temp = A
A = B
B = temp
fim se
// Passo 2: A ≤ C?
se \(A > C\) então
temp = A
A = C
C = temp
fim se
// Passo 3: B ≤ C?
se \(B > C\) então
temp = B
B = C
C = temp
fim se
retorna (A, B, C)
fim função
No final, A contém o menor valor, C o maior, e B o do meio.