A ecnologia ao se iço do ensino da Física
J. E. Villa e
Uni e sidade do Po o, Faculdade de Engenha ia
E-mail: [email p o ec ed]
Ou ub o de 2009
1 O P og ama Maxima
Maxima (
h p://maxima.sou ce o ge.ne
) é um dos sis emas de álgeb a compu acional
(CAS) mais an igos. Foi c iado pelo g upo MAC no MIT, na década de 60 do século passado,
e inicialmen e chama a-se Macsyma (p ojec MAC’s SYmbolic MAnipula o ). Macsyma oi
desen ol ido o iginalmen e pa a os compu ado es de g ande escala DEC-PDP-10 que e am
usados em á ias ins i uições académicas.
Na década de 80, oi po ado pa a á ias no as pla a o mas e uma das no as e sões oi
denominada Maxima. Em 1982. o MIT decidiu come cializa o Macsyma e, simul aneamen e, o
p o esso William Schel e da Uni e sidade de Texas con inuou a desen ol e o Maxima. Na
segunda me ade da década de 80 apa ece am ou os sis emas CAS p op ie á ios, po exemplo,
Maple eMa hema ica, baseados no Macsyma. Em 1998, o p o esso Schel e ob e e au o ização
do DOE (Depa men o Ene gy), que inha os di ei os de au o sob e a e são o iginal do
Macsyma, pa a dis ibui li emen e o código- on e do Maxima. Após a mo e do p o esso
Schel e em 2001, o mou-se um g upo de olun á ios que con inuam a desen ol e e dis ibui
oMaxima como so wa e li e.
No caso dos sis emas CAS, as an agens do so wa e li e são bas an e impo an es. Quando
um mé odo alha ou dá espos as mui o complicadas é bas an e ú il e acesso aos po meno es
da implemen ação subjacen e ao sis ema. Po ou o lado, no momen o em que começa mos
a depende dos esul ados de um sis ema CAS, é desejá el que a documen ação dos mé odos
en ol idos es eja disponí el e que não exis am impedimen os legais que nos p oíbam de en a
descob i ou modi ica esses mé odos.
1.1 A in e ace do Maxima
Exis em á ias in e aces di e en es pa a abalha com o Maxima. Pode se execu ado desde
uma “consola” ou pode se usada algumas das in e aces g á icas como: wxmaxima, exmacs
ou xmaxima. A igu a 1 mos a o aspec o da in e ace xmaxima, que é a in e ace g á ica
desen ol ida o iginalmen e pelo p o esso William Schel e .
1
Figu a 1: A in e ace g á ica xmaxima.
1.2 En ada e saída de dados
Quando se inicia uma sessão do Maxima, apa ece um símbolo
(%i1)
. Ao lado desse símbolo
de e á se esc i o um comando álido, e minado pelo símbolo de pon o e í gula. Ca egando
na ecla de im de linha, o comando que oi esc i o ica á g a ado numa a iá el
%i1
e o esul ado
se á g a ado numa ou a a iá el
%o1
e ap esen ado no ec ã. A segui apa ece á o símbolo
(%i2)
, que pe mi e da um segundo comando e assim sucessi amen e. Comecemos po aze
umas con as simples:
(%i1) 2.5*3.1;
(%o1) 7.75
(%i2) 5.2*log(2);
(%o2) 5.2 log(2)
No segundo esul ado, o loga i mo na u al de 2 não oi calculado, po que o esul ado é um
núme o i acional que não pode se ep esen ado em o ma numé ica exac a. Se quise mos
ob e uma ep esen ação numé ica ap oximada do loga i mo de 2, podemos esc e ê-lo como
2
log(2.0)
; ambém podemos ob e uma ep esen ação numé ica ap oximada do esul ado
%o2
usando a unção loa :
(%i3) loa (%o2);
(%o3) 3.604365338911716
A unção loa ep esen a o seu a gumen o em pon o lu uan e com 16 alga ismos. O o ma o
b loa (big loa ) pe mi e usa uma p ecisão numé ica mais ele ada, que pode se con olada
com a a iá el pp ec ( loa ing poin p ecision). Po omissão, essa a iá el é igual a 16; se,
po exemplo, quise mos ap oxima nume icamen e o esul ado
%o2
com uma p ecisão de 40
alga ismos signi ica i os, usamos o comando e , que que dize a alia :
(%i4) e (%o2, pp ec: 40, b loa );
(%o4) 3.604365338911715608969607031582518153993b0
O alo de 40 pa a a a iá el
pp ec
só em e ei o den o do bloco “
e
” onde oi usado; o a
do bloco,
pp ec
con inua com o seu alo habi ual de 16. A le a b no im do esul ado
%o4
indica que se a a de um núme o no o ma o de pon o lu uan e de g ande p ecisão. O núme o
a segui à le a é o expoen e; nomeadamen e, nes e caso em que o expoen e é ze o, o núme o
de e á se mul iplicado po
100=1
. O esul ado
%o4
ambém podia se ob ido se i éssemos
esc i o a en ada
%i2
na o ma
5.2*log(2b0)
.
O comando e pode se esc i o numa o ma ab e iada, quando não es i e den o de ou as
unções, omi indo o nome e e os pa ên esis. Assim, o comando
%i4
pode ia e sido esc i o de
o ma ab e iada:
(%i4) %o2, pp ec: 40, b loa ;
1.3 Va iá eis
Pa a da um alo a uma a iá el usa-se “:” e não “=”, que se á u ilizado pa a de ini equações
ma emá icas. Po exemplo, se quise mos gua da a soma dos esul ados
%o1
e
%o3
numa a iá el
es
,
(%i5) es: %o1 + %o3;
(%o5) 11.35436533891172
O nome das a iá eis pode á se qualque combinação de le as, núme os e os símbolos % e _.
O p imei o ca ác e no nome da a iá el não pode se um núme o. Maxima az dis inção en e
maiúsculas e minúsculas. Alguns exemplos:
(%i6) x1 : 2;
(%o6) 2
(%i7) a ea : 5$
(%i8) %d_23 : 8;
(%o8) 8
(%i9) a%2 : (x1 : x1 + 2, x1*x1);
(%o9) 16
3
Na en ada
%i7
usámos $ em ez de pon o e í gula pa a e mina o comando. O sinal $ no im
az com que o comando seja execu ado e o esul ado g a ado na a iá el
%o7
, mas sem que o
esul ado seja ap esen ado no ec ã. Vá ios comandos podem se execu ados sequencialmen e,
colocando-os sepa ados po í gulas e en e pa ên esis; isso oi ei o a ás na en ada
%i9
; o
esul ado do úl imo comando é a mazenado na a iá el
a%2
; o p imei o comando na sequência
inc emen a o alo de
x1
em 2, icando a a iá el
x1
com o alo de 4, e inalmen e calcula-se o
quad ado de
x1
, que ica g a ado em
a%2
.
Alguns nomes de a iá eis não podem se usados po es a em ese ados. Já imos que
nomes como
%i3
ou
%o6
es ão ese ados pa a e e i os comandos inse idos numa sessão e os
esul ados ob idos. Uma a iá el ambém não pode e o mesmo nome de algum comando do
Maxima; po exemplo o , while e sum.
Uma a iá el pode con e ambém uma lis a de alo es, que são colocados en e pa ên esis
ec os, sepa ados po í gulas. Po exemplo, pa a c ia uma lis a com os quad ados dos 5
p imei os núme os in ei os:
(%i10) quad ados: [1, 4, 9, 16, 25]$
Os elemen os da lis a são con ados a começa po 1; po exemplo, o e cei o elemen o da lis a
an e io é ob ido assim:
(%i11) quad ados[3];
(%o11) 9
1.4 Cons an es
Exis em algumas cons an es impo an es já p ede inidas no Maxima. Os seus nomes começam
semp e po %. T ês cons an es impo an es são o núme o
π
, ep esen ado po
%pi
, o núme o de
Eule ,
e
, base dos loga i mos na u ais, ep esen ado po
%e
, e o núme o imaginá io
i=√−1
,
ep esen ado po
%i
.
Tan o
%pi
como
%e
são núme os i acionais, que não podem se ep esen ados em o ma
numé ica exac a, mas podemos ob e uma ap oximação numé ica com o núme o de casas
decimais desejadas; po exemplo:
(%i12) e ( %pi, pp ec:50, b loa );
(%o12) 3.1415926535897932384626433832795028841971693993751b0
(%i13) loa (%e);
(%o13) 2.718281828459045
O núme o
%i
é ú il pa a abalha com núme os complexos. Po exemplo:
(%i14) (3 + %i*4) * (2 + %i*5);
(%o14) (4 %i + 3) (5 %i + 2)
Pa a que o esul ado an e io seja ap esen ado como um núme o complexo, com pa e eal e
pa e imaginá ia, usa-se a unção ec o m:
4
(%i15) ec o m(%);
(%o15) 23 %i - 14
O ope ado % e e e-se ao “úl imo esul ado” no comando acima e é equi alen e à a iá el
%o14
.
1.5 Exp essões e equações
Uma exp essão pode con e ope ações ma emá icas com a iá eis inde inidas. Po exemplo:
(%i16) 3*x^2 + 2*cos( )$
Essas exp essões podem se depois usadas pa a p oduzi ou as exp essões. Po exemplo:
(%i17) %o16^2 + x^3; 2 2 3
(%o17) (3 x + 2 cos( )) + x
Pa a da alo es às a iá eis nessa exp essão usa-se a unção e (e alua e):
(%i18) e ( %, x=0.5, =1.3);
(%o18) 1.776218979135868
O sinal de igualdade é usado pa a de ini equações ma emá icas e não pa a a ibui alo es como
nas calculado as; po exemplo:
(%i19) 3*x^3 + 5*x^2 = x - 6;
3 2
(%o19) 3 x + 5 x = x - 6
Pa a encon a as aízes de um polinómio pode se usado o comando all oo s; po exemplo:
(%i20) all oo s(%o19);
(%o20) [x = 0.90725099344225 %i + 0.27758381341005,
x = 0.27758381341005 - 0.90725099344225 %i,
x = -2.221834293486762]
Há duas soluções complexas e uma eal. As ês equações en e pa ên esis ec os em
%o20
azem
pa e de uma lis a com 3 elemen os. Po exemplo, o e cei o elemen o nessa lis a é a aiz eal:
(%i21) %o20[3];
(%o21) x = - 2.221834293486762
A a iá el
x
con inua inde inida, já que o sinal de igualdade não é usado aqui pa a a ibui
alo es numé icos às a iá eis. Os esul ados em
%o20
são ap oximados e não exac os. As aízes
podem se calculadas em o ma algéb ica exac a, em alguns casos, usando o comando sol e, que
ambém esol e ou os ipos de equações di e en es de polinómios, em o ma algéb ica exac a.
Po exemplo, pa a encon a as aízes do polinómio a ás e e ido com o comando sol e:
5
(%i22) sol e(%o19, x)$
(%i23) loa ( ec o m (%) );
(%o23) [x = 0.90725099344225 %i + 0.27758381341005,
x = - 2.221834293486761,
x = 0.27758381341005 - 0.90725099344225 %i]
O esul ado do comando sol e não oi ap esen ado no ec ã po que en ol e á ias linhas de
exp essões algéb icas. O esul ado oi simpli icado mos ando as suas coo denadas “ ec angula-
es”, com pa es eal e imaginá ia sepa adas ( unção ec o m) e inalmen e oi esc i o em o ma
numé ica ap oximada ( unção loa ).
Pa a esol e um sis ema de equações, que podem se linea es ou não linea es, o p imei o
a gumen o pa a o comando sol e de e á se uma lis a com as equações e o segundo uma lis a
com as a iá eis; as equações podem se gua dadas em a iá eis. Po exemplo:
(%i24) malha1: (4 + 8)*I1 - 8* I2 = 6 + 4$
(%i25) malha2: (2+ 8 + 5 + 1)*I2 - 8*I1 = -4$
(%i26) sol e([malha1,malha2],[I1,I2]);
1
(%o26) [[I1 = 1, I2 = -]]
4
O sis ema an e io ambém pode ia e sido esol ido mais apidamen e com o comando linsol e,
em ez de sol e, po se a a de um sis ema de equações linea es.
1.6 G á icos de unções
Pa a desenha o g á ico de uma ou á ias unções de uma a iá el, usa-se o comando plo 2d.
Po exemplo, pa a desenha o g á ico do polinómio
3x3+5x2−x+6
, no in e alo de
x
en e
−3 e 1, usa-se o comando:
(%i27) plo 2d(3*x^3 + 5*x^2 - x + 6, [x, -3, 1])$
É p eciso indica o domínio de alo es de
x
que ai se ap esen ado no g á ico. O esul ado
apa ece numa no a janela ( e igu a 2). Passando o a o sob e um pon o no g á ico, são
ap esen adas as coo denadas desse pon o. O g á ico é p oduzido po um p og ama ex e no,
Gnuplo , que é ins alado conjun amen e com Maxima. Pa a g a a o g á ico num ichei o g á ico,
usam-se duas opções, uma pa a selecciona o ipo de ichei o g á ico e ou a pa a de ini o nome
do ichei o.
Po exemplo, pa a g a a o g á ico ob ido com o comando
%i27
num ichei o GIF, podemos
usa o seguin e comando:
(%i28) plo 2d(3*x^3+5*x^2-x+6, [x,-3,1], [gnuplo _ e m, gi ],
[gnuplo _ou _ ile, " uncao1.gi "])$
6
Figu a 2: G á ico do polinómio 3x3+5x2−x+6.
O g á ico ica g a ado no ichei o uncao1.gi , no o ma o GIF. Ou os dois o ma os g á icos
que podem se usados são png (Po able Ne wo k G aphics) e ps (Pos Sc ip ).
Pa a desenha á ias unções no mesmo g á ico, colocam-se as unções den o de uma lis a. Po
exemplo:
(%i29) plo 2d([sin(x), cos(x)], [x, -2*%pi, 2*%pi])$
O esul ado é ap esen ado na igu a 3.
-1
-0.5
0
0.5
1
-6 -4 -2 0 2 4 6
x
sin(x)
cos(x)
Figu a 3: G á ico das unções seno e co-seno.
É possí el ambém aze um g á ico de um conjun o de pon os em duas coo denadas. As duas
coo denadas de cada pon o podem se indicadas como uma lis a den o de ou a lis a com odos
os pon os; po exemplo, pa a desenha os ês pon os (1.1, 5), (1.9, 7) e (3.2,9), as coo denadas
dos pon os podem se gua dadas numa lis a p:
(%i30) p: [[1.1, 5], [1.9, 7], [3.2, 9]]$
7
Pa a desenha o g á ico, é p eciso da ao comando plo 2d uma lis a que comece com a pala a-
-cha e “disc e e”, seguida pela lis a de pon os. Nes e caso não é ob iga ó io indica o domínio
pa a a a iá el no eixo ho izon al:
(%i31) plo 2d([disc e e,p])$
O g á ico é ap esen ado na igu a 4.
5
5.5
6
6.5
7
7.5
8
8.5
9
1 1.5 2 2.5 3 3.5
disc e e da a
Figu a 4: G á ico de um conjun o de 3 pon os.
Po omissão, os pon os são ligados en e si po segmen os de ec a; pa a mos a apenas os
pon os, sem segmen os de ec a, usa-se a opção s yle, com o alo poin s. Podemos ambém
combina o g á ico dos pon os com o g á ico de uma ou á ias ou as unções; pa a o consegui ,
é p eciso coloca a lis a com a pala a-cha e disc e e den o de ou a lis a com as ou as unções.
De ido ao uso de unções, se á ago a necessá io especi ica o domínio pa a a a iá el no
eixo ho izon al. Podemos ambém especi ica um domínio no eixo e ical, pa a uma melho
ap esen ação, usando a opção y:
(%i32) plo 2d([[disc e e,p], 3+2*x], [x,0,4], [y,0,15],
[s yle, poin s, lines])$
A opção
s yle
em
%i34
indica que o p imei o conjun o de pon os de e á se ep esen ado po
pon os e a unção que em a segui se á ep esen ada com segmen os de ec a. O g á ico é
ap esen ado na igu a 5. Exis em mui as ou as opções pa a o comando
plo 2d
que podem se
consul adas na secção
plo _op ions
do manual. A opção y é especialmen e ú il pa a limi a
os alo es ap esen ados no eixo e ical, no caso de unções com assimp o as e icais.
Pa a aze g á icos de unções de duas a iá eis, em 3 dimensões, usa-se o comando
plo 3d
.
Po exemplo, o g á ico da igu a 6 oi p oduzido com o comando:
(%i33) plo 3d(sin(x)*sin(y), [x, 0, 2*%pi], [y, 0, 2*%pi]);
Exis e ainda ou o p og ama g á ico incluído com o xmaxima, pa a além de Gnuplo , designado
po Openma h. Os g á icos an e io es podem se p oduzidos com esse p og ama, adicionando
uma opção pa a al e a o o ma o g á ico pa a Openma h. Po exemplo, o g á ico em 3 dimensões
que acabámos de desenha pode se ob ido com o Openma h como se segue:
8
0
2
4
6
8
10
12
14
0 0.5 1 1.5 2 2.5 3 3.5 4
y
x
disc e e1
2*x+3
Figu a 5: G á ico de um conjun o de 3 pon os, conjun amen e com uma ec a.
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
sin(x)*sin(y)
Figu a 6: G á ico da unção sin(x)sin(y), ob ido com Gnuplo .
(%i34) plo 3d(sin(x)*sin(y), [x, 0, 2*%pi], [y, 0, 2*%pi],
[plo _ o ma ,openma h]);
O esul ado é ap esen ado na igu a 7.
Clicando no bo ão do a o enquan o se desloca, consegue oda -se o g á ico pa a se is o de
di e en es pon os de is a. O comando plo 3d não admi e á ias unções em simul âneo. O
p imei o a gumen o de plo 3d de e á se uma única unção, ou uma lis a de 3 unções, que
ep esen am as 3 componen es do ec o posição que de ine uma supe ície em 3 dimensões
(g á ico pa amé ico).
9
Figu a 9:
Simulação da bola sal i ona. No lado esque do, a janela do código do p og ama e no
lado di ei o a janela da execução do p og ama.
Expe imen e modi ica o p og ama na janela do mesmo, po exemplo, aumen ando o coe icien e
de es i uição de 0.9 pa a 1 e a segui execu ando-o no amen e. Ago a, a bola e á um mo imen o
con ínuo sem diminuição da al u a e o p og ama nunca acaba á; quando quise pa a o p og ama,
clique com o bo ão esque do sob e a janela da simulação — apa ece á uma mensagem a pedi
pa a con i ma que que e mina o p og ama.
Repa e que, enquan o o p og ama es i e a se execu ado, exis i á uma janela Py hon Shell a
ele associada e nela se ão ap esen adas as mensagens de e o e ou as que sejam en iadas pelo
p og ama.
Algumas simulações com á ias e apas di e en es não começam au oma icamen e, mas só
passam à e apa seguin e quando clica sob e o g á ico com o bo ão esque do do a o. Po
exemplo, na simulação do lançamen o de p ojéc eis ( ichei o p ojec eis.py) um p imei o clique
az com que seja lançado um elec ão; o alcance é ap esen ado na janela g á ica e a janela
Py hon Shell mos a á alguma in o mação adicional sob e a ajec ó ia do elec ão: empo de
oo, dis ância pe co ida e elocidade média. Um segundo clique az com que seja lançada
a bola de énis e pa a lança a bola de énis de mesa de e á clica mais uma ez. Po úl imo,
clica-se no amen e pa a e mina o p og ama.
2.2 O Py hon como calculado a
O Py hon ambém pode se usado como calculado a pa a aze algumas con as. Po exemplo, se
quise mos calcula o empo que a luz do sol demo a a chega à Te a, usamos o alo da dis ância
en e a Te a e o Sol, que é de
1,496×1011
m e a elocidade da luz que é
3,0×108
m/s. Assim,
o empo em segundos se á:
1,496×1011
3,0×108
Essa con a é ei a na Shell do Py hon da seguin e o ma:
16
>>> 1.146e11/3e8
382.0
O esul ado 382.0 apa ece (a azul) quando se ca ega na ecla “En e ”. Se quise mos sabe
esse empo em minu os, e emos de di idi po 60; pa a não e mos que esc e e o esul ado
no amen e, podemos ecupe a a nossa p imei a en ada “1.146e11/3e8” ca egando nas eclas
“Al ” e “p” em simul âneo e a segui di idindo po 60:
>>> 1.146e11/3e8/60
6.3666666666666663
Também podemos usa a iá eis pa a gua da esul ados in e médios:
>>> segundos = 1.146e11/3e8
>>> minu os = segundos/60
>>>
O alo que é gua dado na a iá el não é ap esen ado, mas podemos ê-lo dando o nome da
a iá el:
>>> minu os
6.3666666666666663
As unções ma emá icas habi uais (loga i mo, seno, e c.) não es ão de inidas p e iamen e, mas
podem se inco po adas impo ando o módulo de unções ma emá icas. Uma o ma de impo a
odas as unções e símbolos exis en es num módulo, nes e caso o módulo com nome
ma h
, é a
seguin e:
>>> om ma h impo *
Obse e que quando e minamos de esc e e uma pala a-cha e do Py hon, como om eimpo ,
o Idle iden i ica essas pala as com a co la anja. Essa é uma aliosa ajuda pa a de ec a e os
de sin axe e pa a e i a en a usa uma dessas pala as-cha e como nome de a iá el, o que
da ia um e o.
Uma ez impo ado o módulo ma emá ico
ma h
, e emos disponí eis dois símbolos p ede inidos,
o alo de πe a cons an e de Eule , e as 12 unções ap esen adas na abela 1.
Po exemplo, se quise mos calcula o olume, em me os cúbicos, de uma go a de água com
aio =2 mm, usamos a exp essão do olume da es e a, 4π 3/3:
>>> 4*pi*2e-3**3/3
3.3510321638291127e-08
O ope ado é usado pa a po ências; po exemplo, a unção exponencial de
x
pode se esc i a
exp(x)ou, em o ma equi alen e, e
**
x.
17
Símbolo ou unção Desc ição
pi
Núme o π
e
Núme o de Eule
abs(x)
Valo absolu o de x
sq (x)
Raiz quad ada de x
log(x)
Loga i mo na u al de x
exp(x)
Função exponencial de x
log10(x)
Loga i mo de base 10 de x
sin(x)
Seno de x(xem adianos)
cos(x)
Co-seno de x(xem adianos)
an(x)
Tangen e de x(xem adianos)
asin(x)
Seno in e so de x(em adianos)
acos(x)
Co-seno in e so de x(em adianos)
a an(x)
Tangen e in e sa de x(em adianos)
loo (x)
Elimina as casas decimais de x, dando um in ei o
Tabela 1: Símbolos e unções no módulo ma h.
2.3 Blocos i e a i os e condicionais
Como em qualque linguagem de p og amação, o Py hon inclui á ios ipos de blocos i e a i os
e condicionais. Uma ca ac e ís ica peculia do Py hon, di e en e de ou as linguagens de
p og amação, é que não são usados comandos especiais pa a indica o im de uma linha ou de
um bloco. Pa a indica quais os comandos que azem pa e de um bloco é p eciso que esse
bloco seja inden ado em o ma consis en e: odos os comandos que pe encem a um bloco
de e ão e a mesma inden ação e um bloco in e no de e á e maio inden ação. Pa a inden a
as linhas pode usa -se espaço ou ca ac e es TAB, mas con ém u iliza apenas um ou o ou o
consis en emen e.
O Idle ajuda na a e a de inden a as linhas. Po exemplo, se quise mos esc e e no ec ã uma
lis a com os cubos dos p imei os 5 núme os na u ais, bas a esc e e mos duas linhas de código:
>>> o iin [1, 2, 3, 4, 5]:
i**3
1
8
27
64
125
O símbolo-cha e são os dois pon os; após os esc e e mos e clica mos em “En e ”, Idle já
não coloca o símbolo
>>>
no início da linha, po que es á a espe a que comple emos o bloco.
A inden ação da segunda linha oi ei a au oma icamen e pelo Idle. Quando e minámos de
esc e e a segunda linha, oi p eciso clica duas ezes seguidas em “En e ” pa a que o ciclo
osse inalizado e execu ado.
18
Se, ago a, quise mos esc e e unicamen e os núme os na u ais com cubos que comecem pelo al-
ga ismo 2, conside ando apenas os p imei os 29 núme os na u ais, usamos um bloco condicional
i pa a decidi quais são os cubos com o p imei o alga ismo igual a 2:
>>> o nin ange(1, 30):
cubo = n**3
o dem = loo (log10(cubo))
i loo (cubo/10**o dem) == 2:
p in n, "ao cubo é", cubo
3 ao cubo é 27
6 ao cubo é 216
13 ao cubo é 2197
14 ao cubo é 2744
28 ao cubo é 21952
29 ao cubo é 24389
Nes e caso, em ez de esc e e mos po ex enso a lis a dos 29 p imei os núme os na u ais,
usamos uma unção s anda d do Py hon,
ange
, que p oduz essa lis a. Repa e que Idle iden i ica
as unções s anda d a oxo, mas as unções de inidas po módulos adicionais, como
loo
, não
são iden i icadas.
Usamos ambém o comando
p in
pa a imp imi a iá eis e ex o (colo ido a e de pelo Idle)
no ec ã.
Ou os ope ado es pa a compa a núme os são
<
,
>
,
<=
,
>=
e
!=
(di e en e). Um bloco
i
pode
e um sub-bloco else, que pode inclui ou o bloco i , usando o comando eli . Po exemplo:
>>> n = 2
>>> i 0 < n < 3:
p in "en e 0 e 3"
eli n >= 3:
p in "maio ou igual a 3"
else:p in "meno ou igual a ze o"
en e 0 e 3
2.4 Funções
Pa a de ini unções, po exemplo a unção
loo
de inida pelo módulo
ma h
, esc e e-se o
p ocedimen o den o de um bloco que começa com a pala a-cha e de , seguida pelo nome da
unção e a lis a de a iá eis de en ada en e pa ên esis.
Po exemplo, pa a de ini uma unção
ad
que con e a um ângulo em g aus pa a adianos,
podemos usa :
>>> de ad(x):
e u n pi*x/180
19
a segui já podemos calcula unções igonomé icas de ângulos em g aus. Po exemplo, o seno
de 30◦:
>>> sin( ad(30))
0.49999999999999994
Uma unção em Py hon pode chama a p óp ia unção em o ma ecu si a.
2.5 Módulos
Um p og ama ou
módulo
pode se esc i o in e ac i amen e na Shell, ou pode se copiado pa a
um ichei o e depois execu ado. A opção
New Window
no menu “File” do Idle pe mi e ab i
ou a janela de um edi o de ex o onde é possí el esc e e um p og ama e g a á-lo num ichei o.
O módulo pode con e apenas de inições de unções e a iá eis, como no caso do módulo ma h.
Nesse caso, pa a usa essas unções e a iá eis em ou os módulos ou na shell, é p eciso impo a
o módulo.
O módulo pode se ambém um p og ama que pede alguns alo es de en ada a a és da en ada-
-pad ão, ealiza alguma acção e imp ime alguns esul ados na saída-pad ão.
Pa a ob e alo es de en ada em o ma i e a i a, usa-se a unção inpu . Po exemplo:
>>> n = inpu ("Indique o alo de n: ")
Indique o alo de n: 7
Se o p og ama não o au o-execu á el, pode se ca egado com a opção
Open
no menu “File”
do Idle e a segui execu ado com a opção Run Module no menu “Run”.
Exis e mui a documen ação adicional disponí el na Web. O sí io
h p://www. py hon.o g
é
uma boa e e ência pa a encon a manuais, u o iais, li os e módulos adicionais.
20