Exercícios Resolvidos de IF e ELSE

Agora que você sabe usar o teste condicional IF, a estruturas de controle IF ELSE bem como aninhar IF e ELSE's, vamos resolver alguns exercícios de Python sobre o assunto, para consolidar melhor nossos conhecimentos, fazendo exercícios bem interessantes e realistas.


Exercícios de IF e ELSE em Python

Antes de mais nada, gostaríamos de frisar novamente a importância de você tentar resolver todos os exercícios por conta própria, sem consultar as respostas e soluções.

Mesmo que não consiga, saia feio, cheio de bugs ou muito grande, tente. É tentar que vai te transformar em uma excelente programador Python

  1. Faça um programa que peça dois números e imprima o maior deles.
  2. Faça um script que peça um valor e mostre na tela se o valor é positivo ou negativo.
  3. Crie um programa que verifique se uma letra digitada é "F" ou "M". Conforme a letra escrever: F - Feminino, M - Masculino, Sexo Inválido.


Código comentado dos exercícios

Exercício 01:

Pedimos o primeiro número ao usuário, e armazenamos na variável 'num1'.
Em seguida, pedimos o segundo e colocamos na variável 'num2'.

Agora vamos aos testes!
Primeiro, testamos se o primeiro é maior que o segundo:  num1 > num2 
Se for verdade, exibimos que num1 é o maior e pronto.

Se for falso, cai ELSE, então num2 é que deve ser maior, correto?
Errado!

Pode ser que sejam iguais!
Então, precisamos fazer outro teste IF dentro desse ELSE (estruturas aninhadas!) perguntando se são iguais.

Se forem, exibe a mensagem dizendo que são iguais.
Se não forem iguais, aí sim, é porque num2 é maior e caio no else.

Veja como ficou o código:

num1=int( input('Digite o primeiro numero: ') )
num2=int( input('Digite o segundo numero: ') )

if num1 > num2 :
    print('O primeiro, %d, é maior' %num1)
else:
    if num1 == num2 :
        print('Os números são iguais')
    else:
        print('O segundo, %d, é maior' %num2)


Exercício 02:
Vamos solicitar o número ao usuário e armazenar na variável 'num'.
Para saber se é positivo, basta fazer o seguinte teste condicional:
num > 0

Se o resultado for TRUE, entra no IF e dizemos que é positivo.
Se o resultado do teste for FALSE, vai pro else, então é negativo...errado!

Pode ser 0, que não é nem positivo nem negativo.
Então, dentro desse ELSE, vamos criar mais um bloco IF ELSE.

Dentro desse novo ELSE fazemos o teste para saber se é 0:
num == 0

Se for, entramos nesse novo IF e dizemos que o número é 0. 
Se não for 0, cai no ELSE aninhado, e aí sim, dizemos que é negativo:


num=int( input('Digite um numero: ') )

if num > 0 :
    print('Positivo')
else:
    if num == 0 :
        print('Nem positivo nem negativo, é 0')
    else:
        print('Negativo')

Exercício 03:

Até o momento, só fizemos comparações com números.
Nesse exercício, vamos trabalhar com letras, ou seja, strings.

E strings tem aquela regra: é sempre dentro de aspas. OK?

Então, iniciamos pedindo uma letra ao usuário e armazenamos na variável 'resposta', que vai ser uma string.

No primeiro IF, comparamos para saber se digitaram 'M'.
A comparação de strings é assim: resposta == 'M'
Ou seja, sempre entre aspas.

Se o IF for true, ok, dizemos que é masculina.
Se não for?

Ai cai no ELSE e vamos ver se foi digitado 'F'.
Se foi, cai no IF aninhado e dizemos ser feminina.

Se não for, cai no ELSE aninhado, então o maldito usuário não digitou nem M nem F.


resposta=input('M ou F: ')

if resposta == 'M':
    print('Masculina')
else:
    if resposta == 'F':
          print('Feminina')
    else:
        print('Você não digitou M ou F')

8 comentários:

  1. #Ex03:
    letra = str(input('Digite F ou M ')).upper()
    if letra == 'F':
    print('Feminino')
    else:
    if letra == 'M':
    print('Masculino')
    else:
    print('Desconhecido')

    ResponderExcluir
  2. sexo = input('Escolha teu sexo F - Feminino ou M - Masculino: ')

    if sexo == 'F':
    print('Sexo Feminino')
    elif sexo == 'M':
    print('Sexo Masculino')
    else:
    print('Sexo Inválido')

    ResponderExcluir
  3. Como resolvo esse problema?

    somanum = 43
    if somanum != 10 and somanum > 11:
    somanum = somanum[0]+ somanum[1]
    print (somanum)


    ResponderExcluir
  4. Eu consegui fazer sem olhar as resoluções kkkk tõ evoluindo

    ResponderExcluir
  5. será que assim tmb da certo??

    print('Crie um programa que verifique se uma letra digitada é "F" ou "M". Conforme a letra escrever: F - Feminino, M - Masculino, Sexo Inválido.')
    sexo = input('M ou F:')
    if sexo == f:
    printo('Feminino')
    if sexo == m:
    print('Masculino')
    if sexo != f or m:
    print('Sexo inválido')

    ResponderExcluir
  6. não entendi muito bem o que vc quer fazer, mas eu faria algo assim

    num1 = int(input('digite um numero'))
    num2 = int(input('digite outro numero'))
    somanum = num1 + num2
    if somanum => 11:
    print(somanum)
    else:
    print('resultado invalido')

    ResponderExcluir