Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Universidade Federal do Amazonas Instituto de Computação IEC 037 – Introdução à Programação de Computadores 2013/1 Prof. Leandro Galvão Lista de Exercícios 03 – Estruturas Condicionais em Python 1 Qual é o valor de cada variável após o comando if? a. n = 1 k = 2 r = n if k < n : r = k b. n = 1 k = 2 if n < k : r = k else : r = k + n c. n = 1 k = 2 r = k if r < k : n = r else : k = n d. n = 1 k = 2 r = 3 if r < n + k : r = 2 * n else : k = 2 * r 2 Explique a diferença entre: s = 0 if x > 0 : s = s + 1 if y > 0 : s = s + 1 e s = 0 if x > 0 : s = s + 1 elif y > 0 : s = s + 1 3 Encontre os erros nos seguintes comandos if. a. if x > 0 then print(x) b. if 1 + x > x ** sqrt(2) : y = y + x 2 c. if x = 1 : y += 1 d. xStr = input("Digite um valor inteiro") x = int(xStr) if xStr.isdigit() : sum = sum + x else : print("Entrada inválida para x") e. letterGrade = "F" if grade >= 90 : letterGrade = "A" if grade >= 80 : letterGrade = "B" if grade >= 70 : letterGrade = "C" if grade >= 60 : letterGrade = "d" 4 O que estes fragmentos de código imprimem? a. n = 1 m = -1 if n < -m : print(n) else : print(m) b. n = 1 m = −1 if −n >= m : print(n) else : print(m) c. x = 0.0 y = 1.0 if abs(x - y) < 1 : print(x) else : print(y) d. x = sqrt(2.0) y = 2.0 if x * x == y : print(x) else : print(y) 5 Suponha que x e y são variáveis, cada uma contendo um número. Escreva um fragmento de código que define y para x, se x é positivo e 0 caso contrário. 6 Suponha que x e y são variáveis, cada uma contendo um número. Escreva um fragmento de código que define y para o valor absoluto de x, sem chamar a função abs. Use o comando if. 7 Explique por que é mais difícil comparar os números de ponto flutuante do que números inteiros. Escreva um código Python para testar se um número inteiro n é igual a 10 e se um número de ponto flutuante x é aproximadamente igual a 10. 8 É Qua O qu 9 Ca O se escu Usan 10 D 11 E Por desc cons Rast 13. 12 F 13 F 14 F fácil confund if flo al mensagem count ue acontece q ada quadrado eguinte pseud uro (preto) ou if the i e else i e ndo o proced Dê um conjun Em um progr exemplo, co creve um alg sulta com tem if sta s else s if end e else e if s < T else T treie esse alg Faça um flux Faça um flux Faça um flux dir os operad oor = 13 de erro você == 0 quando você o no jogo de docódigo des u claro (bran e letter if the nu col else col if the nu col else col dimento em D nto de quatro rama de esca nsultas come oritmo que d mpo inicial s art1 > st s = start s = start d1 < end2 e = end1 e = end2 < e The appoi The appoi goritmo com xograma para xograma para xograma para dores = e ==. ê obtém? Esc ê roda o prog xadrez pode screve um al nco). is an a, umber is lor = "bla lor = "whi umber is lor = "bla lor = "whi Dica de Prog o casos de te alonamento, q eçam em hor determina se start2 e temp tart2 t1 t2 2 intments intments uma consult a o algoritmo a o algoritmo a o algoritmo . Escreva um creva outro p grama? e ser descrito lgoritmo que c, e, o odd ack" ite" even ack" ite" gramação 3.2 ste para o alg queremos ch rário cheio e a consulta c o final end2. overlap. don’t ov ta de 10-12 e o do Exercíci o do Exercíci o do Exercíci 3 m programa te programa tes o por uma letr e determina s or g 2, rastreie ess goritmo do E hecar se duas usamos tem om tempo in . . verlap. e uma de 11- io 11. io 18. io 20. este contend te contendo ra e número, se um quadra se pseudocód Exercício 9 q consultas se mpo militar (0 nicial start1 e 13, depois co o a sentença a sentença como g5 ne ado com uma digo com a e que envolve t e sobrepõem. 0-24 horas). O e tempo final om uma con a este exemplo a letra ou núm entrada g5. todos os ram . O pseudocód l end1 se sob nsulta de 10-1 : mero específ mos. digo seguinte brepõe com a 11 e uma de fico é e a 12- 4 15 Desenvolva um grupo de casos de testes para o algoritmo no exercício 11 16 Desenvolva um grupo de caso de testes para o algoritmo no exercício 20 17 Escreva um pseudocódigo para um programa que leva o usuário percorrer por mês e dia e que mostre se é ou não um dos feriados citados em seguida: Ano Novo (1 de Janeiro) Dia da Independência (4 de Julho) Dia dos Veteranos (11 de Novembro) Natal (25 de Dezembro) 18 Escreva um pseudocódigo para um programa que atribui notas em cartas para um quiz, de acordo com a tabela abaixo: Pontuação Nota 90-100 A 80-89 B 70-79 C 60-69 D < 60 F 21 Explique a diferença entre a sequencia if/elif/else e declaração de if aninhado. Dê um exemplo de cada. 22 Dê um exemplo de uma sequência if/elif/else onde a ordem dos testes não importa. Dê um exemplo onde a ordem dos testes importa. 23 Reescreva a condição da Seção 3.4, também apresentada a seguir, para usar o operador < em vez do operador >=. Qual é o impacto sobre a ordem das comparações? if (richter >= 8.0): print("Maioria das estruturas caem.") else: if (richter >= 7.0): print("Muitos prédios destruídos.") else: if (richter >= 6.0): print("Muitos prédios consideravelmente danificados.") else: if (richter >= 4.5): print("Danos em edifícios mal construídos.") else: print("Sem destruição de edifícios.") 24 Forneça um conjunto de casos de teste para o programa de imposto no Exercício P3.25. Calcule os resultados esperados manualmente. 25 Complete a tabela verdade a seguir encontrando os valores corretos para as expressões booleanas para todas as combinações das entradas booleanas p, q e r. p q r (p and q) or not r not (p and (q or not r)) False False False False False True False True False . . . 5 outras combinações . . . 26 Verdadeiro ou falso? A e B é o mesmo que B e A para qualquer condição booleana A e B. 5 27 A “pesquisa avançada” de muitos motores de busca permite que você use operadores booleanos para consultas complexas, tais como “(cães OU gatos) E NÃO animais de estimação”. Contraste esses operadores de pesquisa com os operadores booleanos em Python. 28 Suponha que o valor de b é Falso e o valor de x é 0. Qual é o valor de cada uma das seguintes expressões? a. b and x == 0 b. b or x == 0 c. not b and x == 0 d. not b or x == 0 e. b and x != 0 f. b or x != 0 g. not b and x != 0 h. not b or x != 0 30 Simplifique as seguintes declarações. Aqui, b é uma variável que contém um valor booleano e n uma variável que contém um valor inteiro. a. if n == 0 : b = True else : b = False b. if n == 0 : b = False else : b = True c. b = False if n > 1 : if n < 2 : b = True d. if n < 1 : b = True else : b = n > 2 31 O que está errado no seguinte programa? inputStr = input("Enter the number of quarters: ") quarters = int(inputStr) if inputStr.isdigit() : total = total + quarters * 0.25 print("Total: ", total) else : print("Input error.") Fonte: Horstmann, Cay & Necaise, RanceD. (2013). Python for Everyone. John Wiley & Sons.
Compartilhar