Buscar

aula02 lab

Prévia do material em texto

Introdução à
programação com Python
Emanuele Santos
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Objetivos
• Familiarizar-se com o ambiente de programação do 
Python
-Interpretador
-Editor de textos
• Codificar alguns algoritmos da aula passada em 
Python
2
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Agenda
• A linguagem Python
• O que é depuração?
• Por onde começar?
• Programando em Python usando IDLE
3
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
A linguagem Python
• É uma linguagem interpretada
-Programas em Python são executados por um 
interpretador
• Duas maneiras de se usar o interpretador
-Modo interativo
-Modo script (extensão de arquivo .py)
4
Prompt >>>
Modo interativo
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
A linguagem Python
• Execução de script (usando uma janela de prompt de 
comando)
python meu_script.py
• Ou pelo menu Run do IDLE (será mostrado depois)
• Modo interativo é mais conveniente para testar 
pequenos trechos de código
• Para qualquer outra coisa maior que algumas linhas 
de código, salve o código em um arquivo para poder 
modificá-lo e executá-lo depois
5
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Por onde começar?
• O intepretador Python já vem instalado em alguns 
sistemas operacionais (Linux, Mac)
• Disponível em www.python.org
-Instaladores para diversas plataformas
-Baixe e instale a versão 3.3.2
6
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
www.python.org
7
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Instalador para Windows
8
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Por onde começar?
• Windows:
-Usando IDLE:
• Menu Iniciar > Todos os Programas > Python 3.3 
> IDLE (Python GUI)
-Usando diretamente o prompt de comando:
• Menu Iniciar > Todos os Programas > Python 3.3 
> Python (command line)
• Linux:
-Abra um terminal, digite python3
9
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
• Tela inicial do IDLE
10
Por onde começar?
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
O primeiro programa
• Diz a tradição que o primeiro programa que você 
escreve em uma linguagem nova é “Hello, world!”
• Em Python você digita:
>>> print(‘Hello, world!’) 
• E ao pressionar enter, vemos o resultado
Hello, world!
11
o texto a ser exibido 
deve vir entre aspas
Python for Beginners. Professora: Emanuele Santos.
O primeiro programa
12
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
O primeiro programa
• Diz a tradição que o primeiro programa que você 
escreve em uma linguagem nova é “Hello, world!”
• Em Python você digita:
>>> print(‘Hello, world!’) 
• E ao pressionar enter, vemos o resultado
Hello, world!
13
o texto a ser exibido 
deve vir entre aspas
O que acontece se você esquecer as 
aspas no conteúdo do comando print?
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
O que é depuração?
• Termo em inglês: debug, debugging
14
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
O que é depuração?
• Processo de encontrar e remover defeitos em um 
programa
• Tipos de erros:
-Erro de sintaxe (syntax error)
-Erro de execução (runtime error)
-Erro de semântica (semantic error)
15
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Erro de sintaxe
• O programa só pode ser executado se sua sintaxe 
estiver correta, senão o interpretador mostra uma 
mensagem de erro
-Exemplo: uso incorreto de delimitadores
16
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Erro de execução
• O erro só aparece depois que o programa começa a 
executar
-Exemplo: O programa para somar dois números 
esperava que o usuário digitasse dois números mas 
ele digitou uma letra e um número. O programa 
mostrará um erro ao tentar executar a soma 
• Também pode ser chamado de exceção (exception)
17
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Erro de semântica
• O erro mais difícil de se depurar porque 
normalmente não há mensagem de erro, ou seja, o 
programa executa com “sucesso”...
• ... só que não faz o que o programador esperasse 
que ele fizesse
-a semântica do programa está errada
18
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Depuração Experimental
• Umas das habilidades mais importantes em 
programação
• É mais ou menos como trabalho de detetive
• Também é como ciência experimental
-hipótese -> modificação -> execução -> 
observação dos resultados
19
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
O interpretador Python
• Permite que você verifique o resultado de um 
comando instantaneamente
-Facilita o aprendizado da linguagem
• Funciona como uma calculadora
20
operação símbolo
adição +
subtração -
multiplicação *
divisão /
potência **
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Exercícios
• Usando o Python como uma calculadora
1. 6+4*10
2.(6+4)*10 (Compare esse resultado com o item 1)
3. Eleve 23.0 à quinta potência
4. Calcule a média aritmética de 7.4 e 8.5
5. Converta 88ºF para Celsius
21
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Usando o Python em modo script
•Antes de começar, crie uma 
pasta python no Desktop
• Crie um novo arquivo no IDLE
-Menu File > New Window
• Digite 
 print(“Hello, World 2!”) 
•Salve o arquivo com o nome
de hello.py dentro da pasta que você criou
•Execute o arquivo
-Menu Run > Run Module 
22
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Saída de dados
• Usaremos a função print
• print aceita uma sequência de valores a serem 
mostrados na tela, que podem ser de qualquer tipo: 
numérico, literal, incluindo variáveis
23
print(“oi!”)
print(5)
print(7.8)
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Comentários
• Os comentários em Python são ignorados pelo 
interpretador
• São utilizados para explicar os comandos utilizados
• Em python existem duas maneiras de criar 
comentários
-usando o símbolo # para um comentário de uma 
única linha
-ou encapsulando com """
24
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Exemplos de comentários
25
# o comando abaixo não será mostrado
# print(“oi!”)
print(“esse será mostrado”)
""" Este comentário ocupa 
múltiplas linhas """
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Variáveis
• Umavariável guarda um valor, e esse valor pode ser 
um número, um texto, um valor lógico, etc.
• Uma variável é como uma gaveta 
• Criamos uma variável digitando um nome, seguido 
do símbolo = e depois o valor da variável
26
nome = ‘Emanuele’
dia = 29
distancia = 5.7
mes = ‘setembro’
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Variáveis e a função print
27
nome = ‘Emanuele’
dia = 29
mes = ‘setembro’
print(“Oi, ”, nome)
print(“Hoje é ”, dia, “ de ”, mes)
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Entrada de dados
• Usaremos a função input
• input mostra um literal passado na função e retorna 
um literal contendo o que foi digitado pelo usuário 
(sempre do tipo texto)
• guardamos o valor retornado pela função input em 
uma variável
28
nome = input('Qual o seu nome?')
print('Bom dia, ',nome)
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Descobrindo tipos das variáveis
• Usaremos a função type
• type retorna o tipo do valor passado entre 
parênteses
29
nome = input("Digite o seu nome: ")
print(type(nome))
idade = input(“Quantos anos você tem? ”)
print(type(idade))
dia = 29
print(type(dia))
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Entrada de dados
• Para forçar que os valores digitados pelo usuário 
sejam outros além de literal, precisamos converter o 
valor retornado pela função input
• usamos 
• int(...) para converter para inteiro
• float(...) para converter para real
30
idade = int(input(“Quantos anos voce tem? ”))
print(type(idade))
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Exemplo 1
• Programa que multiplica 2 números inteiros no 
editor do python
31
#programa que multiplica 2 números inteiros
n1 = int(input("Digite o primeiro número: "))
n2 = int(input("Digite o segundo número: "))
m = n1 * n2
print("O resultado da multiplicação é ", m)
Disciplina: Prog. Comp. Engenharia. Professora: Emanuele Santos. Período: 2012.1
Exercícios
32
• Altere o programa anterior para multiplicar dois 
números reais
-dica use float(...) no lugar de int(...) para 
converter de string para real
• Escreva um programa para converter uma 
temperatura dada em Fahrenheit para Celsius
C =
5
9
(F � 32)
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Verificando uma condição
• Use a estrutura condicional (if else):
• Atenção para os espaços em branco (4) no começo 
de cada bloco
33
nome = input("Digite o seu nome: ")
num = int(input(“Quantos irmãos ou irmãs você tem? ”))
print("Oi, ", nome)
if num == 0:
 print(“Você é filho(a) único(a).”)
else: 
 print("Voce tem ", num, " irmãos ou irmãs."
dois pontos (:) faz 
parte da sintaxe do 
comando
UFC - Universidade Federal do Ceará
Fundamentos de Programação - Professora Emanuele Santos - Período 2013.2
Exercícios
• Faça um programa para calcular a média aritmética 
entre duas notas de um aluno e mostrar sua 
situação, que pode ser aprovado se a média for 
maior ou igual a 7; ou reprovado, caso contrário
34

Continue navegando