Eu não consigo entender porque a resposta foi 'c' e não 'a', visto que digitei 5:
var = input('Digite o valor da variavel')
if var == 5:
print ('a')
elif var == 4:
print ('b')
else:
print ('c')
Soluções para a tarefa
Resposta:
Eu não sei exatamente, isso não será um resposta para sua duvida.
Mas tenta mudar os sinais, talvez ao invés de usar == (igual, igual), você use > (maior) ou < (menor), por exemplo:
"var = input('Digite o valor da variavel')
if var < 5:
print ('a')
else var > 4:
print ('b')"
Não sei se é isso que você quer, talvez resolva, ou não.
Explicação:
Boa sorte :D
Note que você não especifica qual tipo de dados que serão digitados pelo usuário e, nesse caso, o Python tratará como string.
Assim, quando você digitou 5, o Python interpretou como o caractere '5', não como o numero inteiro 5.
Para "consertar" o código, caso seja de interesse, bastaria utilizar a função input() dentro de uma função de casting int(), informando ao Python que o dado passado pelo usuário é do tipo inteiro (integer), ou seja:
var = int(input('Digite o valor da variavel'))
Há ainda outras possibilidades, uma delas seria, por exemplo, utilizar os números na estrutura condicional entre aspas. Desta forma, estaremos considerando dados do tipo string e, portanto, verificaremos se o usuário digitou o caractere '4' ou se digitou o caractere '5' ou se digitou outra string qualquer.