Questão retirada da OBI (Olimpíada Brasileira de Informática) de 2012, Fase 1, Nível 1.
A questão pode ser acessada através do link: http://olimpiada.ic.unicamp.br/pratique/programacao/nivel1/2012f1p1_vice
Nesse link também existe a opção de testar o algoritmo desenvolvido e ver automaticamente se o algoritmo está correto (botão “Submete solução”). Entre as linguagens de programação disponível está Python, que é linguagem utilizada na codificação presente no vídeo.
Algoritmo:
#faz a leitura dos valores - leitura em uma linha
entrada = raw_input()
p1, p2, p3 = entrada.split()
p1 = int(p1)
p2 = int(p2)
p3 = int(p3)
#realiza os testes necessarios para estabelecer o segundo maior valor
if (p1 > p2 and p1 < p3) or (p1 > p3 and p1 < p2):
print p1
elif (p2 > p1 and p2 < p3) or (p2 > p3 and p2 < p1):
print p2
else:
print p3
Vídeo: