Fazer um programa para ler uma lista de 5 elementos, e, em seguida, mostrar a posição onde se encontram o maior e o menor valor e seus respectivos valores.
Passo 1
O objetivo é criar um programa que leia cinco números de uma lista, percorra esses valores para identificar qual é o maior e qual é o menor, e também registre em que posição (índice) cada um deles está. O conteúdo envolve estruturas de repetição (loop), vetor (array) e comparações para atualizar máximo e mínimo.
Passo 2
Primeiro, declaramos um vetor de tamanho 5 e lemos cada valor do usuário, armazenando-os em
valores[1]
até valores[5]
.Passo 3
Inicializamos o “maior” e o “menor” usando o primeiro elemento do vetor, e guardamos suas posições como 1:
maior ← valores[1]
posicaoMaior ← 1
menor ← valores[1]
posicaoMenor ← 1
maior ← valores[1]
posicaoMaior ← 1
menor ← valores[1]
posicaoMenor ← 1
Passo 4
Percorremos os elementos de índice
i
de 2 até 5. A cada iteração, comparamos valores[i]
com o maior
e com o menor
. Se valores[i]
for maior que maior
, atualizamos maior ← valores[i]
e posicaoMaior ← i
. Se valores[i]
for menor que menor
, atualizamos menor ← valores[i]
e posicaoMenor ← i
.Passo 5
Depois de varrer todo o vetor, o programa exibe:
“Maior valor: X na posição P”
“Menor valor: Y na posição Q”
onde X é o maior número encontrado, P é sua posição, Y é o menor e Q é sua posição.
“Maior valor: X na posição P”
“Menor valor: Y na posição Q”
onde X é o maior número encontrado, P é sua posição, Y é o menor e Q é sua posição.
Resposta
Segue um exemplo em Python:
valores = [0]*5
for i in range(5):
valores[i] = float(input("Digite o elemento {}: ".format(i\(+1\))))
maior = menor = valores[0]
posicaoMaior = posicaoMenor \(=1\)
for idx in range(1, 5):
if valores[idx] > maior:
maior = valores[idx]
posicaoMaior = idx \(+1\)
if valores[idx] < menor:
menor = valores[idx]
posicaoMenor = idx \(+1\)
print("Maior valor: {} na posição {}".format(maior, posicaoMaior))
print("Menor valor: {} na posição {}".format(menor, posicaoMenor))