Carregar apresentação
A apresentação está carregando. Por favor, espere
1
IP – Variáveis e Entrada de Dados
Aprendemos um pouco sobre variáveis, mas nesta aula vamos ampliar nossos conhecimentos estudando novas operações e tipos de dados. Prof. Eduardo Falcão
2
Nomes de variáveis Devem iniciar obrigatoriamente com uma letra ou _
mas podem conter números, underline (_) e acento (não aconselhado) Nome Válido Comentários a1 Sim Inicia com letra, embora contenha número velocidade Formado por letras velocidade90 Formado por letras e números, mas iniciado com letra salário_médio O underline _ facilita a leitura de nomes grandes salário médio Não Não pode conter espaços em branco _b Pode iniciar com _ 1a Não podem começar com número
3
Variáveis numéricas Variáveis que armazenam números inteiros ou de ponto flutuante Números inteiros não tem parte decimal: 5, 300, 2, -500, 8494 Números de ponto flutuante possuem parte decimal: 1.0, -4.9, 5.95 Usa-se ponto ao invés de vírgula para separar inteiro de casa decimal (formato americano) Não usamos ponto para separar milhares. 1 milhão se escreve assim:
4
Exercício Quais desses valores é do tipo inteiro e quais são do tipo ponto flutuante? 5 5.0 4.3 -2 100 1.333
5
Representação de valores numéricos
Sistema de base 10: 531 5× × ×10 0 Sistema binário (base 2): 1010 1× × × ×2 0 10 Em Python, nós temos precisão ilimitada para números inteiros (o que não ocorre na maioria das outras linguagens) Você precisar adicionar novos dígitos sempre que precisar Porém números de ponto flutuante tem precisão limitada e problemas de precisão/representação Digite 3*0.1 no interpretador print((3*0.1)==0.3) Se necessitar de precisão irrestrita, procure pelos módulos decimals e fractions Internamente, todos os números são interpretados utilizando o sistema binário. Outras linguagens geralmente tem um número limitado de dígitos. Digamos que seja 10. Então o maior número seria e o menor seria Perceba que um dígito é usado para armazenar informação se o número é positivo ou negativo. 0.1 não tem problema nenhum no sistema decimal, porém, é uma dízima periódica no sistema binário Cuidado com precisão de números de ponto flutuante!!
6
Variáveis do tipo lógico
A variável do tipo lógico (ou booleano) funciona como um interruptor de luz. Ela pode ter apenas dois valores. Do mesmo modo que um interruptor pode estar apenas ligado ou desligado, um valor booleano pode ser apenas True (Verdadeiro) ou False (Falso). T e F escritos com letras maiúsculas
7
Booleanos Um booleano é como um interruptor de luz. Ele pode ter apenas dois valores. Do mesmo modo que um interruptor pode estar apenas ligado ou desligado, um valor booleano pode ser apenas True (Verdadeiro) ou False (Falso). Atribua os valores seguintes às variáveis correspondentes: 7 à variável my_int 1.23 à variável my_float True à variável my_bool a = True b = False
8
Operadores relacionais
Existem seis comparadores: Igual a ("==") Diferente de ("!=") Menor do que ("<") Menor ou igual a ("<=") Maior que (">") Maior ou igual a (">=") Comparadores verificam se um valor é (ou não) igual, maior do que (ou igual a), ou menor que (ou igual a) outro valor. Note que "==" compara se duas coisas são iguais, e "=" atribui um valor a uma variável. nota = 8 media = 7 aprovado = nota >= media print(aprovado) Obviamente, só se compara valores de mesmo tipo (não podemos comparar strings com números). Ou comparamos números com números, ou strings com strings ou booleanos com booleanos. 5>=5 é verdadeiro, pq o = satisfez a condição
9
Exercício Qual o resultado dessa comparação? 17 < 328
100 == (2 * 50) 19 <= 19 -22 >= -18 99 != (98 + 1) “a” == “a”
10
Exercício Complete a tabela respondendo True ou False
a=4, b=10, c=5.0, d=1, f=5 expressão Resultado a==c a<b d>b c!=f a==b c<d b>a c>=f f>=c c<=c c<=f F,T,F,F,F,T,T,T,T,T,T
11
Operadores lógicos Comparam valores lógicos e resultam em valores lógicos. Há três operadores lógicos: and (e), que verifica se as duas afirmações são True; or (ou), que verifica se pelo menos uma das afirmações é True; not (não), que gera o oposto da afirmação.
12
And O operador booleano and (e) retorna True (verdadeiro) quando as expressões dos dois lados do and são verdadeiras. Por exemplo: 1 < 2 and 2 < 3 é True; 1 < 2 and 2 > 3 é False.
13
Exercício Atribua a cada variável o valor booleano apropriado. Antes de executar no interpretador, tente descobrir a resposta. Iguale a variável bool_one ao resultado de False and False Iguale a variável bool_two ao resultado de -(-(-(-2))) == -2 and 4 >= 16**0.5 Iguale a variável bool_three ao resultado de 19 % 4 != 300 / 10 / 10 and False Iguale a variável bool_four ao resultado de -(1**2) < 2**0 and 10 % 10 <= 20 - 10 * 2 Iguale a variável bool_five ao resultado de True and True bool_one = False and False #false bool_two = -(-(-(-2))) == -2 and 4 >= 16** #false bool_three = 19 % 4 != 300/10/10 and False #false bool_four = -(1**2) < 2**0 and 10 % 10 <= 20-10* #true bool_five = True and True #true print("bool_one: " + str(bool_one)) print("bool_two: " + str(bool_two)) print("bool_three: " + str(bool_three)) print("bool_four: " + str(bool_four)) print("bool_five: " + str(bool_five))
14
Or O operador booleano or (ou) retorna True (verdadeiro) quando pelo menos uma das expressões ligadas por or for verdadeira. Por exemplo: 1 < 2 or 2 > 3 é True; 1 > 2 or 2 > 3 é False.
15
Exercício Hora de praticar com or!
Iguale a variável bool_one ao resultado de 2**3 == 108 % 100 ou 'Cleese' == 'King Arthur' Iguale a variável bool_two ao resultado de True ou False Iguale a variável bool_three ao resultado de 100**0.5 >= 50 ou False Iguale a variável bool_four ao resultado deTrue ou True Iguale a variável bool_five ao resultado de 1**100 == 100**1 ou 3 * 2 * 1 != 3 + 2+ 1 bool_one = 2**3 == 108%100 or 'Cleese'=='King Arthur' #true bool_two = True or False #true bool_three = 100**0.5 >= 50 or False #false bool_four = True or True #true bool_five = 1**100 == 100**1 or 3*2*1 != #false print("bool_one: " + str(bool_one)) print("bool_two: " + str(bool_two)) print("bool_three: " + str(bool_three)) print("bool_four: " + str(bool_four)) print("bool_five: " + str(bool_five))
16
Not O operador booleano not retorna True para declarações falsas e False declarações verdadeiras. Por exemplo: not False resultará em True, not 41 > 40 retornará False.
17
Exercício Vamos praticar um pouco com not.
Iguale a variável bool_one ao resultado de not True Iguale a variável bool_two ao resultado de not 3**4 < 4**3 Iguale a variável bool_three ao resultado de not 10 % 3 <= 10 % 2 Iguale a variável bool_four ao resultado de not 3**2 + 4**2 != 5**2 Iguale a variável bool_five ao resultado de not not False bool_one = not True #false bool_two = not 3**4 < 4** #true bool_three = not 10 % 3 <= 10 % #true bool_four = not 3**2 + 4**2 != 5** #true bool_five = not not False #false print("bool_one: " + str(bool_one)) print("bool_two: " + str(bool_two)) print("bool_three: " + str(bool_three)) print("bool_four: " + str(bool_four)) print("bool_five: " + str(bool_five))
18
Expressões Lógicas Os operadores lógicos podem ser combinados em expressões lógicas mais complexas Prioridade: not, and, or Ex: True or False and not True Ex: salário > 1000 and idade > 18 Os operadores relacionais devem ser avaliados primeiramente
19
Exercício Escreva uma expressão para determinar se uma pessoa deve ou não pagar imposto. Considere que pagam impostos pessoas cujo salário é maior que R$1.200,00. Calcule o resultado da expressão A>B and C or D: A B C D Resultado 1 2 True False 10 3 5
20
Strings Armazenam cadeias de caracteres
Não há problema em utilizarmos espaços Toda string tem um tamanho associado, que pode ser obtido através da função len() print(len(“abcdefghi”)) O conteúdo pode ser acessado utilizando o índice índice 1 2 3 4 5 6 7 8 a b c d e f g h i conteúdo a = “abcdefghi” print(a[0])
21
Strings Como imprimir o último caractere de uma string qualquer?
print(a[len(a)-1]); ou print(a[-1]) O que acontece se tentarmos acessar um índice inexistente? print(a[9]) índice 1 2 3 4 5 6 7 8 a b c d e f g h i conteúdo O índice negativo indica de trás pra frente.
22
Operações com Strings Concatenação (+, *) Composição a = “abcdefghi”
print(a+”jklmno”) a = “abc” print(a*3+”123”) a = “XX” print(a+”-”*10+a) idade = 23 print(”Joao tem %d anos” %idade) Concatenação só funciona com strings Variações: %03d, %3d,%-3d marcador Tipo %d Números inteiros %s Strings %f Números decimais
23
Strings Composição Fatiamento
print(“%5.2f” %5) #5 posições, 2 para parte decimal print(“%s tem %d anos e R$f no bolso.” %(nome, idade, grana)) Fatiamento a = “abcdeghi” print(a[0:2]) print(a[1:2]) print(a[2:4]) print(a[:2]) print(a[1:]) print(a[0:-2]) print(a[:]) print(a[-1:]) print(a[-5:7]) print(a[-2:-1])
24
Simulação Também conhecida por rastreamento, tabela de mesa, depuração, debugging... Significa você tentar executar o seu código utilizando papel. Auxilia a encontrar erros (semânticos) com facilidade.
25
Entrada de dados Função input() Convertendo a entrada para inteiro
nome = input(“Digite seu nome:”) print(“Você digitou %s” %nome) anos = int(input(“Anos de serviço: ”)) valor_por_ano = float(input(“Valor por ano: ”)) bonus = anos * valor_por_ano print(“Bônus de R$%5.2f” %bonus)
27
URI https://www.urionlinejudge.com.br/judge/en/problems/view/1002
28
Homework Da lista de algoritmos – questões 7, 8, 9, 10, 11, 15 (adicionar inserção de dados pelo usuário) Livro “IP com Python” - pg 71 e 72, questões 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13, 3.14, 3.15
29
Refs Introdução à Programação com Python (2ª edição), por Nilo Ney Coutinho Curso de Python do Codecademy
Apresentações semelhantes
© 2025 SlidePlayer.com.br Inc.
All rights reserved.