Aulas 29 e 30

Propaganda
Introdução à Informática
Aulas 29e30– Programação em Python
MicheleA.Brandão
[email protected]
UniversidadeFederaldeMinasGerais
Novembrode2016
Python
§
§
§
§
§
Linguagemdealtonível
Sintaxesimples:fácil deaprender
Implementaçãodistribuídacomocódigolivre
Muitasbibliotecasdisponíveis
Podeserusadaemdiferentessistemasoperacionais
§ Windows,Linux,MacOS,etc.
§ Usadanomundoreal
§ Google,Microsoft,Yahoo!,NASA,outros
§ Siteoficial:http://www.python.org
2
Python
§ OprogramaPythonétraduzidoparaumcódigointermediário
chamadobyte-code
§ Obyte-code éexecutadoporuminterpretadorespecial
§ Vantagens
§ Fácil deusarinterativamente
§ Fácil detestaremodificarcomponentes
§ Maiseficientedoqueuminterpretadorclássico
§ Desvantagem
§ Nãoétãoeficientecomoumalinguagemcompiladatradicional(C,C++,
Fortran,etc)
3
Python– UtilizaçãoInterativa
§ OscomandossãoexecutadosnoterminaldoPython
§ PodemosescrevercomandosPythoneverosresultados
imediatamente
§ Nessaaula,opython serátestadoonline
§ Bastautilizarosite:www.jdoodle.com
4
Python
§ Após acessarositewww.jdoodle.com,escolha alinguagem
deprogramação
Escolhaa
linguagemde
programação.No
caso,python3.
5
Python
§ Após acessarositewww.jdoodle.com,digite ocódigoem
pythonnacaixabranca
Espaço para
digitar ocódigo
6
Python
§ Após acessarositewww.jdoodle.com,digite ocódigoem
pythonnacaixabranca
Espaço para
digitar aentrada
docódigo
7
Python
§ Exemplo:códigoparasomardoisnúmerosempython
Apósdigitarocódigo,
cliqueemExecutepara
obteroresultado.
8
Python
Programa parasomar
dois números
Os dois númerosqueserão
somados
Saídadoprograma
9
Variáveis
§ Posiçãodememóriaquearmazenaumdadoouvalor
§ Podeserutilizadaemodificadapeloprograma
§ Deveserdefinidaantesdeserusada
10
Variáveis-Propriedades
§ Nome
§ Podeterumoumaiscaracteres
§ Nemtudopodeserusadocomonome
§ Tipo
§ Conjuntodevaloresaceitos
11
Variáveis-Nomes
§ Deveiniciarcomletras
§ Podemconterletras,númerosouunderscores (_).Apartir
dasversõesdePython3.0asletraspodemseracentuadas
§ Letrasmaiúsculas eminúsculas sãoconsideradasdiferentes
§ Palavrasreservadasnãopodemserusadascomonomes
12
Variáveis–PalavrasReservadas
and
def
if
assert
del
break
class
return
finally
import
elif
for
pass
else
from
continue
True
not
except
False
in
is
as
global
or
try
while
yield
lambda
raise
with
None
13
Variáveis
§ Quaisnomesdevariáveis estãoincorretos:
1.Contador
2.contador1
3.comp!
4..var
5.Teste123
6.teste
7.int
8.int1
9.1contador
10.-x
11.Teste-123
14
Variáveis
§ Quaisnomesdevariáveis estãoincorretos:
1.Contador
2.contador1
3.comp!(incorreto)
4..var(incorreto)
5.Teste123
6.teste
7.int
8.int1
9. 1contador(incorreto)
10.–x(incorreto)
11.Teste-123 (incorreto)
15
Variáveis–Tipo
§ Osvaloresevariáveis emPythonsãoclassificadosem
diferentestipos
§ Otipodefineosvaloresqueavariável podeassumireas
operaçõesquepodemserrealizadascomela
§ Diferentedeoutraslinguagens,nãoprecisamosdefiniro
tipodeumavariável
§ Otipodavariável sealteraconformeodadoarmazenado
§ Comandotype(x)permitesaberotipodovalorouvariável
emx
16
Comando deImpressãonaTela
§ Funçãoprint()
§ Funçãoquerealizaaimpressãodosdadosdoprogramano
terminal
§ Formageral:print(expressão1,expressão2,...,expressãoN)
Testenohttps://www.jdoodle.com/python3-programming-online
print(4,5,6)
17
Comando deEntradadeDados
§ Funçãoinput()
§ Funçãoquerealizaaleituradeumacadeiadecaracteresdoteclado
noterminal
§ Formageral:variável =input(texto)
§ Afunçãoinput()escrevetextonoterminal.Éopcional
Ocomandoinput()estásemtexto,maspoderia
serinput("Digiteoprimeironumero:").Assim,
otextoDigiteoprimeironumero:apareceria
paraousuárionoterminal.
18
Comando deEntradadeDados
§ Podeserfeitaaconversãoexplícitaentretipos
§ Permiteconverterumtipodedadoemoutro
§ int(x):convertex parainteiroviatruncagem (apenasaparteinteiraé
considerada)
§ round(x):convertex parainteiroviaarredondamento
§ float(x):convertex paraponto-flutuante
§ str(x):converteumvalorx paratexto
19
Atribuição
§ OoperadordeAtribuiçãoé =
§ Associaovalordeumaexpressãoaumavariável
§ Avariável écriadanesteprocesso
§ Formageral:nomedavariável =valorouexpressão
A=25
Ovalor25(númerointeiro–int) foi atribuídoavariávelA
20
Atribuição
§ Éimportantenotarqueaatribuiçãoéumcomando,não
umaequação
§ Alterarovalordeumavariável,nãoalteraovalordas
variáveis jácalculadasusandooantigovalor
21
Operadores Aritméticos
§ Permitemcriarexpressõesaritméticasutilizandonúmeros
inteirosefracionários
§ Seguemaprecedência damatemática:multiplicaçãoe
divisãotemprioridadeemrelaçãoasomaesubtração
22
Operadores Relacionais
§ Permitemacomparaçãoentreosvaloresdediferentesvariáveis
§ ==Igual
§ x==5
§ !=Diferente
§ x!=5
§ >Maior doque
§ x>y
§ >=Maiorouiguala
§ x >=10
§ <Menordoque
§ y<100
§ <=Menorou iguala
§ y<=z
23
Operadores Lógicos
§ Sãooperadoresquetrabalhamcomvaloreslógicos e
retornamumvalorlógico verdadeiro(1)oufalso(0)
§ and OperadorE
§ x ==5and x <y
§ or OperadorOU
§ x !=5oux <0
§ not Operadordenegação
§ not (x >y)
24
Comando if
§ Ocomandoif éutilizadoquandofornecessárioescolher
entredoiscaminhosdentrodoprogramaouquandose
desejaexecutarumcomandosujeitoaoresultadodeum
teste
§ Aexpressão,nacondição,será avaliada:
§ Seacondiçãoforverdadeira(True),asequência deinstruções
seráexecutada
§ Seelaforfalsa(False),asequência deinstruçõesNÃOserá
executada
25
Comando if- Exemplo
26
Comando if- Exemplo
Nohttps://www.jdoodle.com/python3programming-online,épreciso
especificarqueIdadeédotipointeiro
(int).Porisso,precisamoscolocar
int(Idade).Alémdisso,sempreé
precisocolocar()noprint.Ex:
print(”maiordeidade").
Issovariadecompiladorpara
compilador.
27
Exercício
§ Dadaovalordanotadeumaluno,monteaexpressãoif queverifica
seeleprecisarfazerexameespecial.Oalunodeverfazeresseexame
sesuanotaformaiorouiguala30emenordoque60.
28
Exercício
§ Dadaovalordanotadeumaluno,monteaexpressãoif queverifica seele
precisarfazerexameespecial.Oalunodeverfazeresseexamesesuanotafor
maiorouiguala30emenordoque60.
Entrada:anotadoaluno
Saída:Comoanotadoaluno é45,acondição
doifint(nota)>=30andint(nota)<60:é
válida,entãoéimpressoqueoalunoprecisa
29
fazerexameespecial.
Comando While
§ Equivaleaocomandoenquanto utilizadonospseudocódigos
§ Repeteumasequência decomandosenquantoacondição
forverdadeira
30
Exemplo While
§ ImprimindoosnúmerosentreAeB
31
Exemplo While
§ ImprimindoosnúmerosentreAeB
Nohttps://www.jdoodle.com/python3programming-online,olhemasaídado
programa.
Porqueessasaída?
32
Exemplo While
§ ImprimindoosnúmerosentreAeB
Valoresiniciais
deAeB
A
B
13
25
33
Exemplo While
§ ImprimindoosnúmerosentreAeB
13<=25(verdadeiro)
Asinstruções
print(A)
e
A=A+1serão
executadas
A
B
13
25
34
Exemplo While
§ ImprimindoosnúmerosentreAeB
Emprint(A),ovalordeA
queé13seráexibidona
tela
E
emA=A+1,A=13+1=14
A
B
13
25
35
Exemplo While
§ ImprimindoosnúmerosentreAeB
Aofinalizarasduas
instruções,olaçowhile
voltaaserexecutado.
A<=Bequivalea14<=25
(verdadeiro)
Entãoasduasinstruções
dentrodolaçowhilevoltam
aserexecutadas.
A
B
13
25
14
25
36
Exemplo While
§ ImprimindoosnúmerosentreAeB
Aofinalizarasduas
instruções,olaçowhile
voltaaserexecutado.
A<=Bequivalea14<=25
(verdadeiro)
Entãoasduasinstruções
dentrodolaçowhilevoltam
aserexecutadas.
A
B
13
25
14
25
15
25
37
Exemplo While
§ ImprimindoosnúmerosentreAeB
Asoperaçõesdentrodolaço
whileserãoexecutadasaté
Aseriguala25.
A
B
13
25
14
25
15
25
16
25
17
25
18
25
19
25
20
25
21
25
22
25
23
25
24
25
25
25
38
Comando For
§ Oloopoulaçoforéusadopararepetirumconjuntode
instruçõesparaumalistadevalores
§ Onúmerodeiteraçõesdarepetiçãoestá limitadopelo
comprimentodalistadevalores
39
Comando For
Observem asaídado
programa
40
FunçãoRange
§ Afunçãorange()permitegerarsequências devaloresem
progressãoaritmética
§ Muitoútilparageraraslistasdevaloresparaocomandofor
§ Formasdeuso:
§ range(N):geravaloresinteirosde0at N-1
§ range(i,N):geravaloresinteirosdei at N-1
§ range(i,N,D):geraosvaloresinteirosi,i+D,i+2D,...
41
Comando For
§ Imprimiros30primeirosnúmerosinteiros
42
Comando For
§ Imprimiros30primeirosnúmerosinteiros
Comocomeça dozero,
completa 30números
impressosno29.
43
Download