(1 ponto) Faça um programa que leia dois números inteiros e imprima o maior deles, sem casas decimais. Estude a seguinte fórmula e entenda como ela pode te ajudar nessa tarefa:
Python tem um comando
que determina o máximo dentre dois números e um
com comportamento análogo. Nesse exercício o uso deles está proibido.
Passo 1
O enunciado pede que se escreva um programa que:
- Leia dois números inteiros (chamemos de
e ). - Imprima o maior entre eles, sem casas decimais (ou seja, como inteiro).
- Não pode usar as funções prontas
ou .
Além disso, o enunciado fornece a fórmula
e pede que se entenda como ela pode ajudar na tarefa. O programa deve aceitar qualquer inteiro (positivos, negativos ou zero) e devolver exatamente o maior dos dois inteiros.
Passo 2
Vamos entender o que significa
Aplicando isso a
, então
.
- Se , então
.]
- Se
Passo 3
Agora avaliaremos a fórmula separando os dois casos. Primeiro, suponha que
. Então
e
Ou seja, quando
é maior ou igual a
, a fórmula devolve
.
Passo 4
No outro caso, suponha que
. Então
e
Ou seja, quando
é maior, a fórmula devolve
.
Passo 5
Conclusão matemática: para quaisquer inteiros
e
,
Além disso, como em cada caso o numerador vale
ou
, ele é divisível por
e o resultado é um número inteiro — portanto não há problema em usar divisão inteira no programa.
Passo 6
Como implementar isso em Python de modo seguro (sem produzir float e sem usar
/
):
- Ler os dois inteiros com
map(int, input().split())(assumindo que estão na mesma linha separados por espaço) ou ler duas linhas. - Calcular
. Aqui absé a função de valor absoluto do Python (permitida) e//é divisão inteira. Usamos//porque o numerador é múltiplo deconforme mostrado antes, então o resultado será exatamente o inteiro desejado. - Imprimir o resultado com
print(...).
Passo 7
Exemplos rápidos para fixar:
- Se
e :
- Se
e :
Em ambos os casos o valor coincide com o maior número.
Passo 8
Dica prática para a prova: escreva claramente as etapas — ler os inteiros, aplicar a fórmula com
abs, usar //2 para evitar floats, e imprimir. Isso é rápido, seguro e atende à restrição de não usar max/min. Força aí — você consegue!Resposta
a, b = map(int, input().split())
print((a + b + abs(a - b)) // 2)