Você está na página 1de 4

06.

Lstruturas 8s|cas de A|gor|tmos


1|pos r|m|nvos de Dados (1)
ara enLender os upos prlmluvos, faz-se necessrlo
enLender um concelLo de mals alLo nlvel: a lnformao.
ALo ou efelLo de lnformar. 1ransmlsso de nouclas.
Comunlcao. Ao de lnformar-se. lnsLruo,
enslnamenLo. 1ransmlsso de conheclmenLos.
ComplemenLarmenLe, a lnformao pode ser vlsLa
como um con[unLo de dados organlzados, com senudo,
com semnuca.
8epresenLao de faLos, concelLos e lnsLrues, por
melo de slnals de uma manelra formallzada, posslvel de
ser Lransmluda ou processada pelo homem ou por
mqulnas.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 2
1|pos r|m|nvos de Dados (2)
Cada dado possul um padro de represenLao, upo
prlmluvo, que lnsLrul o compuLador sobre como LraLar o
dado.
lundamenLalmenLe, usa-se na consLruo de
algorlLmos quaLro upos prlmluvos, sendo esLes:
|nte|ro: qualquer lnformao numerlca que perLena ao
con[unLo dos numeros lnLelros relauvos (negauva, nula
ou posluva).
Lx.: Meu vlzlnho comprou 2 carros.
rea|: qualquer lnformao numerlca que perLena ao
con[unLo dos numeros reals (negauva, nula ou posluva).
Lx.: Mlnha amlga Lem 1,63 meLros de alLura.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 3
1|pos r|m|nvos de Dados (3)
caractere: qualquer lnformao composLa por caracLeres
numerlcos (0..9), alfabeucos (A..Z, a..z) e especlals (#, ?, !,
[, $, , ...).
Lx.: C Lrlo e composLo por: Pugulnho, Zezlnho e
Lulslnho" .
|g|co: qualquer lnformao que possa assumlr somenLe
um de dols esLados posslvels.
Lx.: A porLa esL aberLa ou fechada.
vla de regra, as llnguagens de programao proveem
upos de dados adlclonals, com o ob[euvo de faclllLar o
desenvolvlmenLo de programas.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 4
Constantes e Var|ve|s (1)
Constantes
um dado e consLanLe quando no sofre varlao no
decorrer do Lempo. Seu valor e consLanLe desde o lnlclo
aLe o m da execuo do algorlLmo.
Lx.: 3, no lume", 2327, -0.38
Var|ve|s
um dado e classlcado como varlvel quando Lem a
posslbllldade de ser alLerado em algum lnsLanLe no
decorrer do Lempo. uuranLe a execuo do algorlLmo, o
valor sofre alLerao ou o dado e dependenLe da
execuo em um cerLo momenLo ou clrcunsLncla.
Lx.: CoLao do ular, eso da essoa, lndlce de lnao
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 3
Constantes e Var|ve|s (2)
um exemplo que llusLra a dlferena enLre consLanLes e
varlvels serla consLruo de um algorlLmo para o
clculo da rea de uma clrcunferncla.
ara Lal, e necessrlo usar a frmula nr
2
, onde:
n Lem valor consLanLe de 3,1416..., lndependenLe de qual
se[a clrcunferncla,
e r, que represenLa o ralo, e dependenLe de
clrcunferncla, logo e varlvel a cada execuo do
algorlLmo.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 6
Iormao de Idennhcadores
Cs ldenucadores so os nomes dados para as
consLanLes ou varlvels ao longo do algorlLmo.
1odos os ldenucadores devem ser represenLauvos, ou
se[a, Ler um nome que remeLa ao dado armazenado.
1ambem devem segulr o segulnLe crlLerlo de formao:
comear por um caracLere alfabeuco,
ser seguldo por mals caracLeres alfabeucos ou
numerlcos.
Lxemplos de ldenucadores:
v||dos: noLa1, noLa2, nomes, Medla, lC1S, eLc.
|nv||dos: 3x, L(3), A:8, x-?, noLa/2, AWC*, &AA, eLc.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 7
Dec|arao de Var|ve|s
Sempre que for necessrlo armazenar algum dado em
memrla, faz-se necessrlo declarar expllclLamenLe
uma varlvel denLro do algorlLmo.
A declarao de uma varlvel conslsLem em:
denlr um upo prlmluvo de dados,
denlr um ldenucador vlldo.
Lxemplos de declarao de varlvels.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 8
<tipo>: <identificador>;
caractere: nome, endereo, data;
inteiro: idade, parcelas;
real: peso, altura, cotao;
lgico: resposta, porta, motor;
Lxpresses Ar|tmncas
Lxpresses arlLmeucas so aquelas cu[os operadores
so arlLmeucos e cu[os operandos so consLanLes ou
varlvels do upo lnLelro ou real.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 9
Cperador Iuno Lxemp|o
+ Adlo 2 + 2, x + , z + 4
- SubLrao 4 - 1, z - q, 7 - a
* Mulupllcao 2 * 4, a * b, x * 3
/ ulvlso 8 / 2, c /a, 7 / b
poL(x, ) x elevado a poL(2, 3), poL(x, )
rad(x) 8alz quadrada de x rad(9), rad(z)
mod 8esLa da dlvlso 9 mod 4 resulLa 1
dlv CuoclenLe da dlvlso 9 dlv 4 resulLa 2
Lxpresses Lg|cas (1)
Lxpresses lglcas so aquelas cu[os operadores so
lglcos ou relaclonals e cu[os os operandos so
relaes, varlvels ou consLanLes do upo lglco.
!"#$%&'$#( *#+%,-'.%-(/ so operadores que reallzam
comparaes enLre dols valores de mesmo upo prlmluvo.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 10
Cperador Iuno Lxemp|o
lgual 3 3, x , 2 z
Malor 3 4, a b, 8 z
Menor 1 8, x z, 3
Malor ou lgual 3 3, x , z 7
Menor ou lgual 6 9, a x, b 8
ulferenLe 1 2, x , 3 z
Lxpresses Lg|cas (2)
!"#$%&'$#( 012-,'(/ so conecuvos bslcos para a
formao de proposles lglcas.
1abe|as-verdade
1abela-verdade e o con[unLo de Lodas as posslbllldades
comblnaLrlas enLre os valores de varlvels lglcas, as
quals possuem apenas duas slLuaes (verdadelro ou
lalso).
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 11
Cperador Iuno
no negao
L Con[uno
Cu uls[uno
Lxpresses Lg|cas (3)

Lxemplos
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 12
A 8 A e 8
verdadelro verdadelro verdadelro
verdadelro lalso lalso
lalso verdadelro lalso
lalso lalso lalso
A 8 A ou 8
verdadelro verdadelro verdadelro
verdadelro lalso verdadelro
lalso verdadelro verdadelro
lalso lalso lalso
A No A
verdadelro lalso
lalso verdadelro
2 < 5 e 15 / 3 = 4
V e 5 = 4
V e F
F
2 < 5 ou 15 / 3 = 4
V ou 5 = 4
V ou F
V
recednc|a de Cperadores
A resoluo de expresses arlLmeucas e lglcas segue o
segulnLe padro de precedncla de operadores.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 13
parnteses mais internos
operadores aritmticos
operadores relacionais
operadores lgicos
parnteses mais internos
pot rad
* / div mod
+ -
no
e ou
Cperador de Atr|bu|o
uma vez declarada uma varlvel, e necessrlo poder
aLrlbulr um valor a esLa.
C operador de aLrlbulo serve [usLamenLe para
armazenar um deLermlnado valor em uma varlvel de
mesmo upo.
Lxemplos de aLrlbulo.
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 14
<varivel> ! <valor>;
lgico: A, B;
inteiro: X;
A ! B;
X ! 8 + 13 div 5;
B ! 5 = 3;
Comandos de Lntrada e Sa|da
Cs algorlLmos preclsam ser allmenLados por dados
provldos pelos usurlos. ara Lornar lsLo posslvel se
deve usar um comando de enLrada de dados.
Cs algorlLmos Lambem preclsam exLernar para os
usurlos os resulLados obudos. ara Lal, usa-se o
comando de escrlLa.
Lxemplos de enLrada e salda:
!oo ablo 06. LsLruLuras 8slcas de AlgorlLmos 13
leia(<varivel>);
escreva(<varivel>);
caractere: nome;
escreva(Digite seu nome:);
leia(nome);
escreva(Obrigado + nome);