Baixe o app para aproveitar ainda mais
Prévia do material em texto
Estruturas de Condição, Repetição e Lógica Com frequência, a programação envolve analisar um conjunto de condições e deicidir qual ação deve ser executada de acordo com essas condições para permitir analisar o estado de um programa e responder de forma apropriada a esse estado. Estruturas de Condição Muitas vezes precisamos que determinado bloco de código seja executado apenas se uma determinada condição for verdadeira. Em casos assim, devemos usar uma estrutura de repetição. - Estrutura If: permite avaliar se uma expressão e de acordo com o seu resultado, executar uma ação. O if é usado para determinar se uma condição é verdadeira. 1. var == 7 2. if var == 7: 3. print(“A variável é igual a 7!”) Observe que a condição sempre termina com “:” dois pontos e o operador de igualdade é “==” e não “=”. É possível usar a instrução “if” de diversas formas, no entanto, por ora, três fórmulas de usá-la: ✓ como uma condição única para executar uma instrução única quando a condição for verdadeira; ✓ como uma condição única para executar instruções múltiplas quando a condição for verdadeira; ✓ combinação de condições múltiplas em uma decisão única e execute uma ou mais instruções quando a condição combinada for verdadeira; Caso a condição dentro do if não for verdadeira, outra estrutura entra em jogo. É a estrutura chamada de “else”. - Estrutura else: é usado caso a condição “if” não seja verdadeira. Por exemplo: 1. Value = int(input(“Type a number between 1 and 10: “)) 2. if (Value > 0): 3. print(“O valor é maior que zero!”) 4. else: 5. print(“O valor não é maior que zero!”) Nesse exemplo, ao ser dado um número maior que zero no “input” pedido ao usuário, o “if” se torna verdadeiro; caso seja um valor menor que zero, o “else” se torna verdadeiro e a mensagem mostrada é que “O valor não é maior que zero!”. Se quisessemos relacionar se uma pessoa já é de maior ou não, podemos usar o código abaixo: 1. idade = 18 2. if idade > 18: 3. print(“Você já é de maior!”) 4. else: 5. print(“Você não é de maior ainda!”) - Estrutura elif: se existir mais de uma condição alternativa que precisa ser verificada, antes de utilizar o else, devemos utilizar o “elif” para avaliar as expressões intermediárias. Por exemplo: 1. age = 17 2. if age == 17: 3. print(“Almost there, but can’t yet.”) 4. elife age >= 18: 5. print(“Let’s come in!”) 6. else: 7. print(“You can’t enter here, go back home!”) Estruturas de Repetição Estruturas de repetição são artifícios das linguagens de programação para executar loops até que o mesmo termine. - For: funciona por meio de uma sequência, que não importa se é uma série de letras ou itens dentro de uma coleção. Por exemplo, uma instrução for simples. 1. for Letter in “Howdy!”: A instrução começa com a palavra-chave for. O próximo item é uma variável que armazena um único elemento de uma sequência. Nesse caso, o nome da variável é “Letter” e a sequência é “Howdy!”. Outro exemplo é para contar em qual letra é representado por qual número: 1. LetterNum = 1 2. for Letter in “Howdy!”: 3. print(“Letter “, LetterNum, “ is “, Letter) 4. LetterNum +=1 Começamos criando uma variável “LetterNum” usada para rastrear o número de letras que foram processadas. Cada vez que o loop completa, LetterNum é atualizado em 1. A instrução “for” percorre a sequência das letras na string “Howdy!”. Ele coloca cada letra, uma de cada vez, em “Letter”. O código mostra o valor atual de LetterNum e seu caractere associado encontrado em “Letter”. 1. Letter 1 is H 2. Letter 2 is o 3. Letter 3 is w 4. Letter 4 is d 5. Letter 5 is y 6. Letter 6 is ! Usamos a estrutura “break” para que um loop seja interrompido. No entando, ela é colocada acerca de uma instrução “if” que define a condição para emitir o break. 1. Value = input("Type less than 6 characters: ") 2. LetterNum = 1 3. for Letter in Value: 4. print("Letter ", LetterNum, " is ", Letter) 5. LetterNum+=1 6. if LetterNum > 6: 7. print("The string is too long!") 8. break - While: trabalha com uma condição ao invés de uma sequência. A condição declara que a instrução while deve executar uma tarefa até que a condição não seja mais verdadeira. Por exemplo 1. Sum = 0 2. while sum < 5: 3. print(Sum) 4. Sum+=1 Nesse caso, o programa irá somar até que a condição da soma seja menor que 5. Caso ultrapasse 5, a soma irá parar. - for...in: o “for” executará um determinado bloco de código por um número definido de vezes. É útil quando sabemos a quantidade de vezes que queremos executar um determinado bloco de código. 1. for i in range(1,10): 2. print(i) O código acima, por exemplo, executa o print enquanto o intervalo entre 1 e 10 não finalizar. Operadores Lógicos As linguagens de programação utilizam conectivos lógicos na construção de expressões lógicas. Existem dois conectivos lógicos e, mesmo que não sejam conhecidos como conectivos lógicos, são usados diariamente. - and: une a expressão a sua esquerda a expressão a sua direita. Sempre deve ser usado entre duas expressões relacionais, como por exemplo: 1. (2 < 1) and (3 == 3) O resultado é FALSO. Já que 2 não é menor que 1. O “and” necessita que ambas condições sejam verdadeiras para o resultado ser verdadeiro. 1. resposta = int(input(“Qual sua idade? “)) 2. if resposta >=18 and resposta <=65: 3. print(“Você é obrigado a votar!”) 4. else: 5. print(“Você não é obrigado a votar!”) Nesse caso, para ser obrigatório a votar, a pessoa deve ter entre 18 e 65 anos. A tabela verdade do and, é: Condição A Condição B AND (A.B) TRUE TRUE TRUE TRUE FALSE FALSE FALSE TRUE FALSE FALSE FALSE FALSE - or: operador usado para verificar se apenas um dos resultados é verdadeiro. Esse tipo de operador necessita que apenas uma condição seja verdadeira para se tornar verdadeira. 1. (2 > 1) or (3 < 7) Por exemplo, em uma fila, para que uma pessoa passe na frente ela deve ser gestante OU cadeirante OU idoso. Caso uma das condições for verdadeira, o resultado é positivo. 1. print('1. Idoso') 2. print('2. Gestante') 3. print('3. Cadeirante') 4. print('4. Nenhum destes') 5. resposta=int( input('Você é: ') ) 6. 7. if (resposta==1) or (resposta==2) or (resposta==3) : 8. print('Você tem direito a fila prioritária') 9. else: 10. print('Você não tem direito a nada. Vá pra fila e fique quieto') Lembrando, que a tabela verdade para OR e AND é data pela seguinte: Condição A Condição B AND (A+B) TRUE TRUE TRUE TRUE FALSE TRUE FALSE TRUE TRUE FALSE FALSE FALSE - not: é um operador usado para reverter uma expressão. Por exemplo, se uma condição é TRUE, ela se torna FALSE e vice-versa. Por exemplo, criando um script que pergunta qual a melhor banda do universo: 1. banda = input('Qual melhor banda do mundo? ') 2. 3. if not banda=='rush': 4. print('Herege!') 5. else: 6. print('Correto, é o Rush!') A tabela verdade do not, também existe e é dada por: Condição A NOT (~A) TRUE FALSE FALSE TRUE Por fim, há alguns operadores de atribuição que podem ser encontrados pelos programas, onde: += : equivale a x = x + valor -= : equivale a x = x – valor /= : equivale a x = x / valor //= : equivale a x = x // valor *= : equivale a x = x * valor
Compartilhar