Enviar um café pro programador

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')

31 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
    Respostas
    1. sexo = input("\033[1;30mInforme seu sexo:").strip().upper()
      if sexo[0] == "F":
      print("\033[1;30mSeu sexo é feminino")
      elif sexo[0] == "M":
      print("\033[1;30mSeu sexo é masculino")
      else:
      print("\033[1;31mSEXO INVÁLIDO")

      Excluir
    2. letra = input ("você é M ou F? ")

      if letra == 'M':
      print ("Masculino")

      elif letra == 'm':
      print ("MASCULINO")
      elif letra == 'f':
      print ("FEMININO")
      else:
      if letra == 'F':
      print ("FEMININO")
      else:
      print (" ????ERRO 002???-LETRA INCORRETA!!")


      coloquie um #elif caso usuario use letra menuscula!! esta certo? ou tem outra forma ???

      Excluir
  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. Eu consegui fazer sem olhar as resoluções kkkk tõ evoluindo

    ResponderExcluir
  4. 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
    Respostas
    1. o interessante seria você colocar else no fim, mas não vai precisar colocar esse sinal de diferente!

      Excluir
    2. Outra coisa... nos ifs as letras tem que vir acompanhadas por aspas, pois são strings, se estiverem sem, o computador vai pensar que é um número.

      Excluir
    3. Matheus, refiz sua questão da maneira correta, espero que tenha entendido.

      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":
      print("Feminino")
      elif sexo == "m":
      print("Masculino")
      else:
      print("Sexo inválido")

      Excluir
  5. 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
  6. A=int(input('digite um valor')
    B=int(input('digite outro valor')

    If a >=b and b>=a:
    Print('a é maior{}'.format(a)
    Elif a >=b and b>=a:
    Print('b é maior{}'.format(b)
    Deu certo

    ResponderExcluir
  7. num1=int(input('Digite um valor: '))
    num2=int(input('Digite outro valor: '))

    if num1>num2:
    print('O valor, %d é maior'%num1)
    else:
    if num1==num2:
    print('Os valores são iguais')
    else:
    print('O valor,%d é maior'%num2)
    print()
    num=int(input('Digite um valor: '))

    if num>0:
    print('É positivo')
    else:
    if num==0:
    print('É nenhum')
    else:
    print('É Negativo')
    print()
    sexo=str(input('Digite M ou F: '))

    if sexo=='M':
    print('É Masculino')
    else:
    if sexo=='F':
    print('É Feminino')
    else:
    print('Digite M ou F Novamente')

    ResponderExcluir
  8. R. do 3º exercício:

    sexo = input('Escolha um sexo: \n[f] Femenino;\n[m] Masculino.')
    if sexo == 'f':
    print('O sexo escolhido foi: feminino.')
    else:
    if sexo == 'm':
    print('O sexo escolhido foi: masculino.')
    else:
    print('Sexo inválido.')

    ResponderExcluir
  9. R. do 2º exercício:

    num_teste = float(input('Digite número: '))
    if num_teste < 0:
    print('{} é um número negativo.'.format(num_teste))
    else:
    if num_teste > 0:
    print('{} é um número positivo.'.format(num_teste))
    else:
    print('{} é um número nulo.'.format(num_teste))

    ResponderExcluir
  10. R. do 1º exercício:

    num1 = float(input('Digite um número: '))
    num2 = float(input('Digite outro número: '))
    if num1 > num2:
    print('{} é o maior número digitado.'.format(num1))
    else:
    if num2 > num1:
    print('{} é o maior número digitado.'.format(num2))
    else:
    print('{} e {} são os mesmos números digitados.'.format(num1, num2))

    ResponderExcluir
  11. primeira muito fácil !!
    :
    n1 = int(input("Diga um numero: "))
    n2 = int(input("Diga outro numero: "))

    if n1 > n2:
    print(n1)
    if n1 < n2:
    print(n2)

    ResponderExcluir
  12. ##Faça um programa que peça dois números e imprima o maior deles.
    ##Exercício 1
    num1 = int(input("Digite um número inteiro: "))
    num2 = int(input("Digite outro número inteiro: "))

    if num1 > num2:## se o número 1 for maior do que o 2
    print("O %d é maior do que o número %d " % (num1, num2))
    else:
    if num1 < num2:## Se o número 1 for menor do que o 2
    print("O número %d é menor do que o número %d "% (num1, num2))
    else:## caso um não seja maior do que o outro eles só podem ser iguais
    print("Os números são iguais")

    ##Faça um script que peça um valor e mostre na tela se o valor é positivo ou negativo.
    ##Exercício 2

    numero = int(input("Digite um número inteiro: "))

    if numero >0:## caso o número seja maior do que 0
    print("O número %d é positivo" % (numero))
    else:##caso não seja maior do que 0
    if numero <0:##caso seja menor do que 0
    print("O número %d é negativo" % (numero))
    else: ## caso seja 0
    print("O numero digitado é 0, não é nem positivo nem negativo")

    ##Crie um programa que verifique se uma letra digitada é "F" ou "M". Conforme a letra escrever: F - Feminino, M - Masculino, Sexo Inválido.

    ##Exercício 3

    letra = input("Digite uma letra: ")

    if letra == "M":
    print("Você é mulher")
    else:
    if letra == "H":
    print("Você é homem")
    if letra != "H" and "M":
    print("Você não está digitando nem M nem H")

    ResponderExcluir
  13. s = input(str("Digite o sexo: [M/F] "))
    if s in "Mm":
    print("Masculino")
    elif s in "Ff":
    print("Feminino")
    else:
    print("Sexo inválido")

    ResponderExcluir
  14. # 01.Faça um programa que peça dois números e imprima o maior deles.

    num1 = int (input ('Digite um número inteiro: '))
    num2 = int (input ('Digite outro número inteiro: '))
    if num1 > num2:
    print ('O número',num1,'é maior')
    else:
    if num2 >num1:
    print ('O número',num2,'é maior')
    else:
    print ('Você digitou dois números iguais')
    input ()

    ResponderExcluir
  15. # 02. Faça um script que peça um valor e mostre na tela se o valor é positivo ou negativo.

    num = int (input ('Digite um número inteiro: '))
    if num>=0:
    print ('Número positivo (+)')
    else:
    print ('Número negativo (-)')
    input ()

    ResponderExcluir
  16. # 03. Crie um programa que verifique se uma letra digitada é "F" ou "M".
    # Conforme a letra escrever: F - Feminino, M - Masculino, Sexo Inválido.

    print ('Sexo:\n\n(F) - Feminino\n(M) - Masculino\n\n')
    sexo = input ('Escolha uma opção: ')
    if sexo == 'F' or sexo == 'f':
    print ('Feminino')
    else:
    if sexo == 'M' or sexo == 'm':
    print ('Masculino')
    else:
    print ('Sexo inválido!')
    input ()

    ResponderExcluir
  17. genero = input("digite a letra do seu gênero:")
    if genero == "f" or genero =="F":
    print("Feminino")
    else:
    if genero == "m" or genero == "M":
    print("Masculino")

    ResponderExcluir
    Respostas
    1. O else teria que vim ao final de tudo, pois significa que se nenhuma das condições a cima forem atendidas, o else é a única e última solução!

      Excluir
    2. Palavraviva.com, refiz seu código finalizando com o else e troquei um if por um elif, mas acredito que dê certo utilizando o if, mas é que meu editor de texto não aceita o if como outra condição sem ser a inicial.

      genero = input("digite a letra do seu gênero:")

      if genero == "f" or genero =="F":
      print("Feminino")
      elif genero == "m" or genero == "M":
      print("Masculino")
      else:
      print("Sexo inválido!")

      Excluir
  18. letra = input('Informe seu sexo [F / M]: ')

    feminino = letra in 'Ff'

    masculino = letra in 'Mm'

    if feminino:
    print('Sexo: Feminino')

    elif masculino:
    print('Sexo: Masculino')

    else:
    print('Sexo inválido')

    ResponderExcluir
  19. Exercicio 1
    Números = int(input("Digitie um Nº: "))
    Número2 = int(input("Digite outro Nº: "))
    if Números > Número2:
    print(f'O Número Maior é {Números}')
    else:
    print(f'O Maior Nº é {Número2}')

    ResponderExcluir
  20. # 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.

    # 1

    NUMERO1 = float(input("Digite um número:"))
    NUMERO2 = float(input("Digite outro número:"))

    if NUMERO1 > NUMERO2:
    print(f'O primeiro número {NUMERO1} foi o maior que o segundo número {NUMERO2}')
    else:
    print(f'O segundo número {NUMERO2} foi o maior que o primeiro número {NUMERO1}')

    # 2

    NUMERO3 = float(input("Digite um número aleatório por favor:"))
    NUMERO4 = float(input("Digite outro número alea1tório por favor:"))
    number = NUMERO3 - NUMERO4

    if number > 0:
    print(f'O Número digitado foi positivo: ({NUMERO3:.0F} -{NUMERO4:.0F} ={number:.0F}).')
    else:
    print(f"O número digitado foi negativo: ({NUMERO3:.0F}-{NUMERO4:.0F}={number:.0F}).")

    ## 3

    ORIENTAÇÃO = input("Digite (M) para Masculino.\n"
    "Digite (F) para Feminino.\n"
    "\n"
    "Digite sua opção :")

    if ORIENTAÇÃO.upper() == "M":
    print(f"Opção ({ORIENTAÇÃO.upper()}) - Masculino registrada com sucesso.")
    elif ORIENTAÇÃO.upper() == "F":
    print(f"Opção ({ORIENTAÇÃO.upper()}) - Feminino registrada com sucesso.")
    else:
    print(f"Opção inválida.")

    ResponderExcluir