Escolar Documentos
Profissional Documentos
Cultura Documentos
Programação I
GCC250 – Turmas 32I/33E/33F
2017-1
Criada por Guido van Rossum entre 1989 e 1991, no CWI, na Holanda.
Aposto que as
empresas escolhem
e usam uma
linguagem apenas...
C ASP Delphi
Exemplo real de uso de Linguagens de Programação
C# C++
Objective-C
Exemplos do mesmo programa em várias linguagens
C C++
FORTRAN
COBOL
Pascal
Java Python
Linguagem de Programação ideal?
Se existem tantas
linguagens, por que
vamos aprender
Python?
exibir()
pra_frente(100)
exit()
print, exibir, pra_frente e exit são exemplos de funções que nós já usamos
em nossos programas.
O cálculo de IMC é usado para saber a faixa de peso de uma pessoa (se é a ideal,
ou se está abaixo ou acima da ideal).
Se formos criar um algoritmo para calcular o IMC de uma pessoa, quais seriam:
• Passo1: Os dados de entrada? O peso e a altura
• Passo2: Os dados de saída? O valor do IMC calculado
• Passo 3: O Processamento? O próprio cálculo do IMC
Definindo os casos de teste
Casos de Teste:
Fazendo os cálculos necessários “na mão”
Peso: 80 kg e Altura: 1,78 IMC: 25,2
nós podemos nos assegurar que:
Peso: 130 kg e Altura: 2,01 IMC: 32,2 • Nós sabemos qual é a estratégia para
resolver o problema.
Peso: 49 kg e Altura: 1,58 IMC: 19,6
• Nós teremos como testar nosso
programa depois de pronto.
Entradas Saídas
A Memória
Você está
falando
sério?
Qual deve ser então a primeira coisa a ser feita em um algoritmo que calcula o IMC?
Poderíamos chamá-las
de v1 e v2 ou de p e a.
Para que uma variável referencie um dado, nós usamos o Pode deixar
operador de atribuição (sinal de igual). que eu
cuido disso!
Por exemplo, se quisermos guardar o valor 80 na variável peso,
nós dizemos que estamos atribuindo o valor 80 à variável peso.
Por exemplo:
• 5 é um número inteiro (int)
• 5.1 é numero de real ou de ponto flutuante (float)
• “Tiao” é um texto ou uma string (str)
>>> type(5)
Nós podemos verificar o tipo de um <class 'int'>
>>> type(5.1)
dado em Python usando a função type:
<class 'float'>
>>> type("Tiao")
<class 'str'>
Tipo de uma variável
>>> peso = 80
>>> altura = 1.75
>>> type(peso)
<class 'int'>
>>> type(altura)
<class 'float'>
O comando input lê uma linha inteira de dados da Por exemplo, o programa abaixo exibiria
entrada padrão (teclado), como texto (string),. de volta um texto digitado pelo usuário.
A sintaxe é: texto = input()
variavel = input() print(texto)
Mas para calcular o IMC, nós queremos ler o peso e a altura como números reais.
Nesse caso, usamos a função float (que é o tipo real em Python) para transformar
o texto digitado pelo usuário em um número real.
peso = input()
peso = float(peso) Ou de forma peso = float(input())
altura = input() mais direta: altura = float(input())
altura = float(altura)
De forma similar, se quiséssemos um
número inteiro, usaríamos a função int.
Cálculo de IMC: obtendo dados de entrada do usuário
C:\Users\Julio\Desktop>python teste.py
Digite o salario atual: 2222
O salario com aumento eh: 2748.614
Erros no código
O mais importante não é não cometer erros e sim conseguir identificar e corrigir os erros.
O que fazer quando o interpretador encontra erros no código (sim, podem ser mais de um):
• Avaliar a linha onde ocorreu o problema e a mensagem apresentada pelo compilador.
• Pode ser que o problema aconteceu em alguma linha anterior (o compilador mostra onde ele
conseguiu perceber o problema).
• Corrigir o problema.
• Salvar novamente o código-fonte.
• Executar novamente o programa.
• Esse processo deve ser repetido até não existir mais nenhum erro de compilação.
Os erros de sintaxe são os “melhores” tipos de erros, porque pelo menos tem alguém (o
interpretador) que nos avisa que ele aconteceu.
Erros de lógica
Suponha que seu amigo ficou empolgado que você agora já sabe
fazer programas que escrevem texto na tela e pediu que você fizesse
um programa que escreve: “Cruzeiro Campeao!!!”.
Você fez então o programa abaixo:
a = 10
b = 0
c = a / b
print(c)
print(a)
a = 10 Não podemos usar uma variável
antes de declará-la
Repare que neste caso o programa executou normalmente. Mas ele possui um erro
lógico, ou seja, não gera o resultado esperado.
Isso aconteceu porque o operador + é válido para strings. Ele concatena duas strings
(gera uma nova string com a junção das strings utilizadas).
Voltando aos nomes de variáveis
Veremos mais pra frente que um espaço no início de uma linha tem
significado. Portanto, não podemos usá-lo de qualquer jeito.
print("linha 1")
O erro acontece por causa print("linha 2")
do espaço que existe antes
do print na segunda linha.
File "teste.py", line 2
print("linha 2")
^
IndentationError: unexpected indent
Treinando o que aprendemos
O que
esse
programa
vai exibir
na tela? #print(“Como nao sou um aluno aplicado”
#print(“e dormi durante a aula, nao”)
print(“entendi”)
#print(“muito bem”)
print(“a materia”)
#print(“apresentada pelo professor!”)
Exercício Resolvido 02
terminar()
Reforçando o aprendizado
2) Faça um programa que leia três notas e seus respectivos pesos, calcule e escreva a média
ponderada dessas notas.
3) Faça um programa que receba o salário base de um funcionário, calcule e mostre o salário
a receber, sabendo-se que o funcionário tem gratificação de 5% sobre o salário base e
paga imposto de 7% sobre este salário.
4) Faça um programa que receba o valor de um depósito e o valor da taxa de juros, calcule e
escreva o valor do rendimento e o valor total depois do rendimento.
Parte 3 - Conceitos Básicos
Aula 08 - Aula Prática
Dicas importantes
A estratégia de solução de um problema é algo que você precisa pensar antes do código do programa.
• Se você não sabe como resolver o problema, não adianta escrever código.
• Tendo a solução basta escrever na linguagem de programação.
• IMPORTANTE: faça o rascunho da solução no caderno antes de programar!
Faça um programa que recebe um número N inteiro digitado pelo usuário e exibe em uma linha
o dobro de N, e na linha seguinte o triplo de N.
Dicas:
• Pense primeiro em quais são os dados de entrada, depois em quais cálculos são necessários
(processamento) e, por fim, em quais informações precisam ser exibidas (saída).
• Em seguida, pense nos casos de teste. Ou seja, alguns valores possíveis de N e o que seria exibido pelo
programa para cada valor.
• Rascunhe a solução no caderno antes de fazer o programa.
• Lembre-se que Python tem os seguintes tipos de dados (entre outros):
• int números inteiros
• float números decimais
• str texto
• Coloque comentários no seu código explicando para você mesmo o que está fazendo.
Exercício 01 – Reposta – Parte 1
Faça um programa que recebe um número N inteiro digitado pelo usuário e exibe em uma linha
o dobro de N, e na linha seguinte o triplo de N.
Exemplo de rascunho de solução:
Problema:
Calcular o dobro e o triplo de um número N.
Entradas:
Um número inteiro N variável inteira N.
Processamento:
Calcular o 2 * N variável inteira dobro.
Calcular o 3 * N variável inteira triplo.
Saída:
Escrever na tela os valores de dobro e triplo em linhas separadas.
Casos de Teste:
N: 2 4 e 6 N: 25 50 e 75 N: 123483 246966 e 370449
Exercício 02 – Resposta – Parte 2
# exibindo os resultados
print("O dobro eh:", dobro)
print("O triplo eh:", triplo)
Exercício 02
Faça um programa que recebe um número N inteiro digitado pelo usuário e exibe em uma linha
o dobro de N, e na linha seguinte o triplo de N.
Ao terminar seu programa você deve testá-lo.
• Testar o programa não é executá-lo uma única vez.
• E sim executá-lo várias vezes e em cada uma usar um valor
diferente de entrada (de preferência baseando-se nos
casos de testes).
Digite o valor de N: 2
O dobro eh: 4
Obs: nesse primeiro programa pode parecer desnecessário. Mas O triplo eh: 6
acredite, isso fará muita diferença!
Digite o valor de N: 25
O dobro eh: 50
O triplo eh: 75
O Python Tutor é um site que nos permite executar um programa em Python linha por
linha e nos mostra uma representação dos dados em memória.
Isso pode ajudar muito na hora de fazermos exercícios!
O endereço é:
www.pythontutor.com
Obs: há um link no Campus Virtual.
Para usar um módulo, usamos o seguinte comando no início do arquivo do nosso programa:
Mas vamos precisar fazer Por hora não há necessidade de criarmos módulos para os
programas tão grandes nossos códigos.
assim agora?
Mas o que já é muito interessante é poder utilizar os
módulos disponibilizados pela linguagem Python.
degrees(x) Converte o ângulo em radianos passado para graus. Ex: degrees(pi) 180
radians(x) Converte o ângulo em graus passado para radianos. Ex: radians(180) 3.1415..
O comando round (arredondamento) está disponível built-in, ou seja, sem precisar importar
nenhum módulo. Ex: round(2.5) 3
A função help
help(sin)
Wiki – Mensagens de Erro do Python
Faça um programa que receba quatro números inteiros, calcule e mostre a soma desses
números.
Exercício 04
Faça um programa que faça a conversão de moedas. Ou seja, dada uma quantia em dólar, o
programa deve informar quanto essa quantia vale em reais.
Use a cotação de moeda: U$ 1,00 = R$ 3,70.
Exercício 05
Dada a equação y = x3 + 2x2 + 5, faça um programa que, a partir de um valor de x informado pelo
usuário, calcule e exiba o valor de y.
Acostumando-se a identificar e corrigir erros em programas
1) Altere o programa do exercício 02 retirando as aspas finais da linha que pede o valor de N.
2) Volte as aspas finais e agora retire as aspas iniciais.
3) Volte as aspas iniciais, mas agora comente a linha (coloque # no início da linha)
4) Retire o comentário do item anterior e em uma linha que tenha print retire a vírgula que
separa o texto da variável.
5) Retire o caractere # de uma linha que seja um comentário.
Que bacana que conseguiu chegar até aqui!! A partir de
agora, vamos começar a fazer a lista de exercícios.
Acesse a lista de exercícios no Dredd.