fundamentos de programação turma ci-240-est josiney de ... · exercícios propostos exercícios...
TRANSCRIPT
![Page 1: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/1.jpg)
Fundamentos de Programação
Turma CI-240-EST
Josiney de Souza
![Page 2: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/2.jpg)
Agenda do Dia – Aula 8 (30/09/15)
Comentários sobre exercícios propostos Desvio condicional
Simples Composto
![Page 3: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/3.jpg)
Exercícios Propostos
Exercícios: Mostrar na tela o comprimento de um texto
digitado pelo usuário Solicitar do usuário dois textos separados e
mostrá-los na tela concatenados, isto é, os dois textos como um só, sem espaço entre eles
Calcular a porcentagem de nucleotídeos A, C, G e C em uma cadeia de DNA informada pelo usuário. Indicar também a quantidade e a porcentagem de nucleotídeos inválidos.
![Page 4: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/4.jpg)
Exercícios Propostos
Exercícios extras: Solicitar do usuário dois textos separados e
verificar se os dois são iguais ou se o primeiro está antes do segundo considerando ordem alfabética
Solicitar do usuário um texto qualquer e um caractere qualquer. Mostrar:
O índice da primeira ocorrência do caractere no texto. Se não ocorrer no texto, mostrar -1
O índice da última ocorrência do caractere no texto. Se não ocorrer no texto, mostrar -1
![Page 5: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/5.jpg)
Operadores
É possível realizar operações sobre as variáveis e sobre algumas constantes: Atribuição: guardar valor em variáveis Aritmética: soma, subtração, multiplicação,
divisão Relacional: maior, menor, igual, diferente, maior
ou igual, menor ou igual Lógica: e, ou, não
![Page 6: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/6.jpg)
Operadores – Relacional
Operadores para comparar o valor de operandos: Símbolo: ==, !=, <=, <, >=, >, in, is Sintaxe:
(Retorno) Operando <Operador> Operando
Operandos são comparados entre si O retorno é booleano (verdadeiro ou falso)
![Page 7: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/7.jpg)
Operadores – Relacional
Operadores para comparar o valor de operandos: Símbolo: == (igual) Símbolo: != (diferente) Símbolo: <= (menor ou igual que) Símbolo: < (menor que) Símbolo: >= (maior ou igual que) Símbolo: > (maior que) Símbolo: in (pertinência de strings) Símbolo: is (identidade/igualdade entre strings)
![Page 8: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/8.jpg)
Operadores – Relacional
Exemplo de expressões: (7 == 5) // Avalia como falso (5 > 4) // Avalia como verdadeiro (3 != 2) // Avalia como verdadeiro (6 >= 6) // Avalia como verdadeiro (5 < 5) // Avalia como falso ('ana' in 'banana') // Avalia como verdadeiro (nome is 'jao') // Depende do valor da variavel
nome
![Page 9: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/9.jpg)
Operadores – Lógica
Operadores para comparar o valor de operandos: Símbolo: not, and, or Sintaxe:
(Retorno) Expressao <Operador> Expressao
Compara expressões segundo a tabela-verdade
O retorno é booleano (verdadeiro ou falso)
![Page 10: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/10.jpg)
Operadores – Lógica
Operadores para comparar o valor de operandos: Símbolo: not (não) Símbolo: and (e) Símbolo: or (ou)
![Page 11: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/11.jpg)
Operadores – Lógica
Operador not: Inverte o valor da expressão
not (5 == 5) // Avalia como falso
not (6 <= 4) // Avalia como verdadeiro
not True // Avalia como falso
not False // Avalia como verdadeiro
![Page 12: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/12.jpg)
Operadores – Lógica
Operador and:
A B A and B
VERDADEIRO VERDADEIRO VERDADEIRO
VERDADEIRO FALSO FALSO
FALSO VERDADEIRO FALSO
FALSO FALSO FALSO
![Page 13: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/13.jpg)
Operadores – Lógica
Operador or:
A B A or B
VERDADEIRO VERDADEIRO VERDADEIRO
VERDADEIRO FALSO VERDADEIRO
FALSO VERDADEIRO VERDADEIRO
FALSO FALSO FALSO
![Page 14: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/14.jpg)
Operadores – Precedência
Existe uma ordem de avaliação dos operadores: 5 + 4 * 2 + 10 → 23 (28 está errado!!!) 5 + 4 >= 5 * 2 and 2 + 10 > 33 / 3 ???
![Page 15: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/15.jpg)
Operadores – Precedência
Existe uma ordem de avaliação dos operadores: 5 + 4 >= 5 * 2 and 2 + 10 > 33 / 3
5 + 4 >= 10 and 2 + 10 > 33 / 3
5 + 4 >= 10 and 2 + 10 > 11
9 >= 10 and 2 + 10 > 11
9 >= 10 and 12 > 11
False and 12 > 11
False and True = False
![Page 16: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/16.jpg)
Operadores – Precedência
Existe uma ordem de avaliação dos operadores: 1. Parênteses 2. Operadores unários 3. Operadores Aritméticos 4. Operadores Relacionais 5. Operadores Lógicos 6. Operadores de Atribuição
![Page 17: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/17.jpg)
Operadores – Precedência
Operador Associatividade
() Esquerda para direita
not - (unários) Direita para esquerda
** Esquerda para direita
* / % Esquerda para direita
+ - Esquerda para direita
< <= > >= Esquerda para direita
== != in is Esquerda para direita
and or Esquerda para direita
= += -= *= /= %= Direita para esquerda
![Page 18: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/18.jpg)
Operadores – Observações
O retorno dos operadores relacionais e lógicos é verdadeiro ou falso
Na verdade, o computador entende True e False como números inteiros:
True → 1 False → 0
Na prática, uma expressão só será falsa se for 0 ou False
Qualquer outro valor é considerado verdadeiro
![Page 19: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/19.jpg)
Desvio Condicional
Normalmente, um programa segue um fluxo linear de execução: Instruções são executadas uma após a outra De cima para baixo
![Page 20: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/20.jpg)
Desvio Condicional
Normalmente, um programa segue um fluxo linear de execução: Instruções são executadas uma após a outra De cima para baixo
Porém, existem comandos que desviam o fluxo de execução Algumas instruções podem ser ignoradas Depende da condição dada
![Page 21: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/21.jpg)
Desvio Condicional
Execução normal: Desvio condicional:
![Page 22: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/22.jpg)
Desvio Condicional
Servem para tomadas de decisão Desviam a execução linear do código Dependem de uma condição
Resultado da condição deve retornar VERDADEIRO ou FALSO
Conhecidos como comandos de decisão Conhecidos como desvios condicionais
![Page 23: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/23.jpg)
Desvio Condicional
Existem três tipos de desvios condicionais: Simples: if (se) Composto: if – else (se – senão) Aninhado: desvio condicional dentro de desvio
condicional
![Page 24: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/24.jpg)
Desvio Condicional Simples
Sintaxe:
if <CONDICAO>:
<COMANDO>
if <CONDICAO>:
<COMANDO>
<COMANDO>
…
![Page 25: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/25.jpg)
Desvio Condicional Simples
Como funciona: A expressão da <CONDICAO> é avaliada Se o resultado da avaliação é VERDADEIRO
<COMANDO> é executado; ou Os comandos dentro do bloco indentado são
executados
Se o resultado da avaliação é FALSO Tudo dentro do escopo do ”if” é ignorado Execução segue normal depois do ”if”
![Page 26: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/26.jpg)
Desvio Condicional Simples - Exemplo
# coding = latin-1
from math import *
from string import *
idade = int( input('Qual a sua idade? ') )
if idade < 18:
print ('Você é menor de idade')
![Page 27: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/27.jpg)
Desvio Condicional Simples - Exemplo
# coding = latin-1
from math import *
from string import *
idade = int( input('Qual a sua idade? ') )
if idade < 18:
print ('Você é menor de idade')
print ('Não pode comprar bebidas alcoólicas')
![Page 28: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/28.jpg)
Desvio Condicional Composto
Serve para tomar decisões mais complexas
Sintaxe:
if <CONDICAO>:
<COMANDO>
else:
<COMANDO>
![Page 29: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/29.jpg)
Desvio Condicional Composto
Como funciona: A expressão da <CONDICAO> é avaliada Se o resultado da avaliação é VERDADEIRO
<COMANDO> entre ”if” e ”else” é executado; ou Os comandos dentro do bloco indentado entre ”if” e
”else” são executados
Se o resultado da avaliação é FALSO <COMANDO> após ”else” é executado; ou Os comandos dentro do bloco indentado após o
”else” são executados
![Page 30: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/30.jpg)
Desvio Condicional Composto - Exemplo
# coding = latin-1
from math import *
from string import *
idade = int( input('Qual a sua idade? ') )
if idade < 18:
print ('Você é menor de idade')
print ('Não pode comprar bebidas alcoólicas')
else:
print ('Maior de idade. Tá liberado')
![Page 31: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/31.jpg)
Desvio Condicional
![Page 32: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/32.jpg)
Desvio Condicional
Exercícios: Descobrir se um número é par ou ímpar Descobrir qual o maior dentre dois números Obter as médias finais e a frequência de Ana e
Mariana. Dizer se elas estão aprovadas, considerando:
Nota: ter pelo menos 50 de média Frequência: ter pelo menos 25 aulas de presença
![Page 33: Fundamentos de Programação Turma CI-240-EST Josiney de ... · Exercícios Propostos Exercícios extras: Solicitar do usuário dois textos separados e verificar se os dois são iguais](https://reader033.vdocuments.com.br/reader033/viewer/2022052609/5be46dc409d3f20a668cd00e/html5/thumbnails/33.jpg)
Próxima Aula
Desvio condicional aninhado