Baixe o app para aproveitar ainda mais
Prévia do material em texto
Aula 6 1. Observe o código Pyton a seguir e informe qual será a saída: total = 200 pais = "BR" if pais == "US": if total <= 50: print("O custo de envio é $50") elif total <= 100: print("O custo de envio é $25") elif total <= 150: print("O custo de envio é $5") else: print("FREE") if pais == "BR": if total <= 500: print("O custo de envio é $100") else: print("FREE") "FREE" "O custo de envio é $100" "O custo de envio é $25" "O custo de envio é $5" "O custo de envio é $50" Explicação: No primeiro teste lógico a resposta é "F", logo nada é executado. Na segunda estrutura de decisão, a primeira resposta é verdadeira (pais = BR) , e o custo é "FREE", pois total <= 500 2. A precedência de operadores é particulamente importante em estruturas condicionais. Assim, sequência correta de precedência segue a seguinte ordem: Parênteses mais internos, Operadores aritméticos, Operadores lógicos e Operadores relacionais Parênteses mais internos, Operadores lógicos, Operadores relacionais e Operadores aritméticos Parênteses mais internos, Operadores relacionais, Operadores lógicos e Operadores aritméticos Parênteses mais internos, Operadores aritméticos, Operadores relacionais e Operadores lógicos Parênteses mais internos, Operadores relacionais, Operadores aritméticos e Operadores lógicos Explicação: Conforme abordado no tópico "Operadores Aritméticos, Relacionais e Lógicos", a sequência correta segue os parênteses mais internos; depois os aritméticos; após os relacionais e, por último, os lógicos. 3. if False: print("Nissan") elif True: print("Ford") elif True: print("BMW") else: print("Audi") Audi Ford Nissan BMW Mercedez Explicação: O Ford foi selecionado na primeira condição verdadeira 4. Qual a saída produzida pelo seguinte código em Python? if True: print("Nissan") elif True: print("Ford") elif True: print("BMW") else: print("Audi") Audi Ford BMW Nenhuma palavra Nissan Explicação: Uma vez que a primeira estrutura de seleção é satisfeita, a palavra 'Nissan' será impressa. Como as demais estruturas são aninhadas com o if inicial, elas não imprimem suas respectivas mensagens. 5. Qual será a saída do código abaixo def f(n): num = int(n) if num == 0: return 0 if num == 1: return 1 if num > 1: return f(num - 1) * num print (f(5.1)) 720 120 Haverá mensagem de erro, pois não há fatorial de número não natural 15 5 Explicação: O paramentro inicial 5.1 será convertido no inteiro 5 na variável num, fazendo com seja possível calcular o fatorial (de 5) 6. Conforme definido, um programa é composto por uma sequência de comandos ou blocos, executados de forma linear de cima para baixo. Nos casos em que devemos escolher qual (is) blocos devem ser executados, utilizamos a estrutura se..então (ou if em Python), nas mais variadas combinações. Para casos onde temos uma quantidade considerável de comparações, a melhor estrutura a se utilizar é: Seleção simples Seleção Composta Todas as anteriores Seleção Encadeada NDA Explicação: Esta é a mais indicada por questões de desempenho (menor número de comparações)
Compartilhar