Sei sulla pagina 1di 37

Algoritmos Variveis & Expresses Prof. Henrique Poyatos profhpoyatos@fiap.com.

Agenda
Expresses aritm!ticas" l#gicas e literais $ Exerc%cios &efer'ncia (i liogrfica Pr#ximos Passos

Objetivos
)ntro*u+ir o aluno no *esenvolvimento *e algoritmos, Apresentar conceitos elementares so re expresses aritm!ticas" l#gicas e literais, Exemplificar a aplica-.o *e algoritmos, Aplicar os conceitos tra alha*os na aulas *e ho/e.

Conteudo Programatico
Expresses aritm!ticas" l#gicas e literais 0 1ipos *e *a*os 0 2onstantes 0 Variveis 0 Expresses3 4 5pera*ores Aritm!ticos 4 5pera*ores 6#gicos 4 5pera*ores &elacionais 0 1a ela ver*a*e 0 2oman*os *e entra*a e sa%*a

Dados x Informa es
Dados 0 utili+a*o para se referir ao que realmente est arma+ena*o. Exemplo3 7ome 8primeiro nome e so renome9" en*ere-o 8logra*ouro" n:mero" complemento9. Informa es 0 utili+a*o para se referir ao significa*o *os *a*os para um *etermina*o usurio. Exemplo3 nome e en*ere-o.

Dados x Informa es
5 servemos que nossa fun-.o" asicamente" ! transformar informa-es iniciais" que usualmente chamamos *e *a*os" em informa-es finais" as respostas que ser.o usa*as por quem utili+a um programa *e computa*or. 1o*a informa-.o para ser :til *eve ser3 "#P $"idedigna% #em&ora' e Pertinente() "idedigna* aut'ntica" genu%na" real" ver*a*eira, #em&ora'* ;ue passa com o tempo" transit#rio, Pertinente* Apropria*a" a*equa*a.

<ontes3 Acessa*as em =>?@=?A@=B. http3??CCC.*icio.com. r?fi*e*igno? http3??CCC.*icio.com. r?temporal? http3??CCC.*icionarioinformal.com. r?pertinente?


!

Dados de ,ntrada e -a.da


Dados de ,ntrada* 2on/unto *e informa-es que o programa precisa rece er para in%cio *e processamento. Dados de -a.da* con/unto *e informa-es que o programa *evolve como resposta ap#s o processamento. Para ca*a algoritmo pense qual a entra*a e qual a sa%*a3

algoritmo para calcular a i*a*e *e uma pessoa algoritmo para verificar se um n:mero ! primo algoritmo que vali*a o login e senha *e uma pessoa algoritmo que vali*a o 27PD *e uma empresa algoritmo para calcular a somat#ria *e uma seqE'ncia *e n:meros.

#i&os de Dados
Refere-se ao conjunto de valores que uma constante, varivel ou expresso possam assumir.

Idade de uma pessoa 30 anos o conjunto de valores que pode ser atribudo para a idade o conjunto de valores numricos inteiros, contendo at 3 dgitos. O nome da professora Maria o conjunto de valores que pode ser atribudo para o nome o conjunto de valores correspondentes a uma cadeia de caracteres composto por letras, acentos e espaos em branco. A nota de um aluno 5,0 conjunto de valores que pode ser atribudo para a nota do aluno o conjunto de valores numricos decimais, contendo 2 dgitos inteiros e 2 dgitos decimais.

#i&os de Dados
Tipos Basicos de Dados (primitivos)

Inteiros - toda e qualquer informacao numerica que pertenca ao conjunto dos numeros inteiros relativos (negativo, nula ou positiva). Real - toda e qualquer informacao numerica que pertenca ao conjunto dos numeros reais (negativa, nula ou positiva). Caractere ou Literal - toda e qualquer informacao composta de um conjunto de caracteres alfanumericos (0 a 9), alfabeticos (A ... Z, a ... z) e especiais (exemplos: , . $ #? ! @ ...). Lgico - toda e qualquer informacao que pode assumir apenas duas situacoes (verdadeiro ou falso, sim ou nao).

#i&os de Dados
,xercitando 333 F' exemplos *a vi*a real cu/o con/unto *e valores se/a3 )nteiro &eal 2aractere ou literal 6#gico

12

,xerc.cios
2lassifique os *a*os especifica*os a aixo *e acor*o com seu tipo. Assinale ) G )nteiro" &G &eal" 2 G 2aracteres ou literais e 6G 6#gicos. $ (2%21 $ (1 $ ( 4erdadeiro $ (5236 $ (17 $ ( 58os96 $ (2%35 $ ( :23221
( )+3257 ( )a ( ) -0.0 ( ).F. ( )abc ( ) Falso ( )C ( ) +3257

11

-o';cionando Prob'emas
1ipos (sicos *e Fa*os 8primitivos9 2orrespon*em aos tipos *e *a*os mais sicos e usuais" ou se/a" que possuem uma maior frequ'ncia *e utili+a-.o.
Tipo
boolean

Descrio
Po*e assumir o valor true ou o valor false. 2aractere em nota-.o Hnico*e *e =I its. Jerve para a arma+enagem *e *a*os alfanum!ricos. 1am !m po*e ser usa*o como um *a*o inteiro com valores na faixa entre @ e I>>B>. )nteiro *e K its em nota-.o *e complemento *e *ois. Po*e assumir valores entre LAMGL =AK e AML=G=AM. )nteiro *e =I its em nota-.o *e complemento *e *ois. 5s valores poss%vels co rem a faixa *e LAL=>GL BA.MIK a A=>L=GBA.MIM. )nteiro *e BA its em nota-.o *e complemento *e *ois. Po*e assumir valores entre LAB=GA.=NM.NKB.INK e AB=L=GA.=NM.NKB.INM. )nteiro *e IN its em nota-.o *e complemento *e *ois. Po*e assumir valores entre LAIB e AIBL=. &epresenta n:meros em nota-.o *e ponto flutuante normali+a*a em precis.o simples *e BA its em conformi*a*e com a norma )EEE M>NL=OK>. 5 menor valor positivo representvel por esse tipo ! =.N@ABOKNIeLNI e o maior ! B.N@AKABNMePBK. &epresenta n:meros em nota-.o *e ponto flutuante normali+a*a em precis.o *upla *e IN its em conformi*a*e com a norma )EEE M>NL=OK>. 5 menor valor positivo representvel ! N.ON@I>IN>KN=ANI>NNeLBAN e o maior ! =.MOMIOB=BNKIAB=>MePB@K.

char byte short int long float double

12

Constantes
Q consi*era*o constante um valor que n.o ! mo*ifica*o *urante to*a a execu-.o *e um algoritmo Valor *o n:mero R 8P)9 G B"=N=> Exemplo na 6inguagem Dava3 s.o *eclara*as como variveis com o mo*ifica*or final. Exemplo3

final double PI = 3.1415; static final double PI = 3.1415;


1am !m s.o chama*as *e variveis somente leitura.
Observa<o* Por conven-.o" conforme 8 http3??CCC.oracle.com?technetCorS?/ava?co*econventionsL=>@@@B.p*f " =>?@=?A@=B9 to*os os nomes *e constantes *evem ser *eclara*os com letras mai:sculas e po*e ser utili+a*o como separa*or o caractere su linha*o ou un*erline 8T9.

13

4ariaveis
J.o utili+a*as para representar valores *esconheci*os" por!m necessrios para a resolu-.o *e um pro lema. Arma+enam *a*os temporariamente. 2ont!m valores que po*em ser altera*os *urante a execu-.o *o algoritmo. ,xem&'o* )*a*e *e uma pessoa" cota-.o *o *#lar" %n*ice *e infla-.o.

Exemplo em Dava3 int ano = 2013; double nota = 2,5; char inicialNome = ' '; boolean cha!e = false;
14

Conven es = >omes de 4ariaveis


=. 5s nomes *evem ser inicia*os por um caractere alfa !tico 8letra9 ou pelo caractere 8T9 su linha*o ou U cifr.o 8*#lar9, A. 5s nomes po*em possuir n:meros" *es*e que se/a utili+a*o ap#s o primeiro caractere *a palavra, B. Al!m *e letras" n:meros e 8A a V" a a +9" cifr.o 8U9" o caractere su linha*o 8T9 e os n:meros 8@ a O9" n.o ! aceito nenhum outro s%m olo, N. Para nomes *e variveis *evemos utili+ar a primeira letra min:scula. As palavras compostas internas *evem iniciar com letra mai:scula. >. 6etras fora *o alfa eto oci*ental" como letras gregras" n.o s.o aceitas, I. Je far *iferencia-.o entre as letras mai:sculas e min:sculas nos nomes *e variveis. 8Exemplo3 5 Dava ! Wcase sensitiveX" ou se/a" fa+ *iferencia-.o entre mai:sculas e min:sculas9, M. 7.o po*em ser utili+a*as palavras reserva*as 8palavras chaves9 *as linguagens. Y Po*em existir varia-es *e linguagem para linguagem.
15

,xem&'os de >omes de 4ariaveis


salario salHora ano= valor1otal= Tano anoT7ascimento JA6A&)5 sal?hora sal Zensal =salmensal 25&&E15 25&&E15 25&&E15 25&&E15 25&&E15 8fora *o pa*r.o9 25&&E15 8fora *o pa*r.o9 25&&E15 8fora *o pa*r.o9 E&&AF5 8cont!m o caractere W?X9 E&&AF5 8cont!m o caractere espa-o em E&&AF5 8come-a com n:mero9
ranco9

1!

,xerc.cios
Assinale com 2 as variveis nomea*as corretamente e com ) as incorretas. 2onsi*ere o pa*r.o co*e conventions e /ustifique to*as as questes assinala*as com ). a.8 9valor . 8 9 T ANK c. 8 9 notaY*oYaluno *. 8 9 a= AcB e. 8 9BxN f. 8 9xy+ g.8 9Sm?h h. 8 9 nome empresa i. 8 9 Zaria /. 8 9 salaTA=> S.8 9ah[ l.8 9WnotaX
1+

O&eradores
J.o utili+a*os para representar expresses *e clculo" compara-.o" con*i-.o e atri ui-.o. 1ipos Atri ui-.o Aritm!ticos &elacionais 6#gicos

1/

O&eradores de Atrib;i<o $?(


Q a opera-.o que permite arma+enar um valor em uma varivel e constantes. *ou le area G =@,

Smbolo de Atribui !o

10

O&eradores Aritm9ticos
soma 8P9 su tra-.o 8L9 multiplica-.o 8Y9 *ivis.o 8?9 J.o utili+a*os para reali+ar as opera-es matemticas sicas. Exemplo na linguagem Dava3 2rian*o uma varivel e aloca-.o ime*iamente um valor a ela3 double area = base " altura; Hm em *uas partes3 double area; area = base " altura;
22

@ais o&eradores matematicos


J.o utili+a*os para reali+ar opera-es matemticas. Exemplo na linguagem Dava3 Incremento $AA( int a=1; ##a; $$ incrementa 1 na !ari%!el a##; $$ incrementa 1 na !ari%!el Decremento $::( int a=1; &&a; $$ decrementa 1 na !ari%!el a&&; $$ decrementa 1 na !ari%!el

21

O&eradores Aritm9ticos

Fonte: ASCENCIO, A. F. G., CAMPOS, E.A.V. Fundamentos da Programacao de Computadores: algoritmos, Pascal, C/C++ e Java, 2a Edicao Sao Paulo: Pearson 200 ! Cap"tulo # $ p% #0

22

O&eradores Aritm9ticos

Fonte: ASCENCIO, A. F. G., CAMPOS, E.A.V. Fundamentos da Programacao de Computadores: algoritmos, Pascal, C/C++ e Java, 2a Edicao Sao Paulo: Pearson 200 ! Cap"tulo # $ p% #0

23

O&eradores Aritm9ticos

24

O&eradores Be'acionais
Permitem efetuar compara-es entre *uas variveis. 5 resulta*o *a compara-.o ! sempre um valor l#gico 8 ooleano9 ver*a*eiro ou falso.

)gual*a*e 8GG9 Zenor 8\9 Zaior 8]9 Zenor igual 8\G9 Zaior igual 8]G9 Fiferente 8[G9

25

O&eradores Be'acionais

Fonte: &SCE'C(), &% F% *%, C&+P)S, E%&%,% Fundamentos da Programacao de Computadores: algoritmos, Pascal, C/C++ e Java, 2a Edicao Sao Paulo: Pearson 200 ! Cap"tulo # $ p% #0

2!

O&eradores Be'acionais

P-*&, Sandra e .(SSE/(, *erson $ 01gica de programacao e estrutura de dados, 2a Edicao, Sao Paulo: Person, 2002! Cap"tulo 3 $ p% 34

2+

#abe'a 4erdade

PUGA, Sandra e RISSETI, Gerson 01gica de programacao e estrutura de dados, 2a Edicao, Sao Paulo: Person, 2002! Cap"tulo 3 $ p% 32

2/

O&eradores CDgicos
J.o opera-es efetua*as com valores ooleanos 8true?false9" resultan*o em valores ooleanos.

, $EE( OF $GG( >,HAIJO $)(

20

Comando de -a.da $Port;go'(


Comando ,KIL, Exi e na tela uma mensagem ou conte:*o *e uma varivel. ,xem&'o* )7)2)5 exi e WAl^ Zun*oX <)Z

32

Comando de ,ntrada $Port;go'(


Comando ,>#BA Permite ao usurio *igitar *a*os e arma+enar em variveis. Exemplos3 )7)2)5 inteiro numero" total exi a WFigite um n:mero X entra numero total G numero Y A exi a W5 total ! X" numero <)Z
31

,xerc.cios
Jua equipe est *esenvolven*o um sistema *e *esenho e cou e a voc' a tarefa *e *esenvolver programas para calcular a rea *as seguintes figuras geom!tricas =. &et_ngulo 8 ase x altura9 A. 2%rculo 8R x &aioA9

Jolu-.o =3 INI'I( real area, base e altura e)iba *Informe o !alor da base+* leia base e)iba *Informe o !alor da altura+* leia ,alturaarea = base " altura e)iba area .I/
32

,xerc.cios
B. 5 salrio *e um professor *o ensino particular ! calcula*o com ase no n:mero *e aulas *a*as. a9 Jalrio ase3 calcule o salrioL ase *a seguinte maneira3 multiplique o n:mero *e aulas semanais por N"> semanas. 5 resulta*o encontra*o ! o total *e aulas que *eve ser multiplica*o pelo valor horaLaula. 9 A*icional *e horaLativi*a*e3 a horaLativi*a*e ! um a*icional *e >` *estina*o exclusivamente ao pagamento *o tra alho *o professor na prepara-.o *e aulas e corre-.o *e provas. Para calcular" multiplique o salrioL ase pelo percentual *e horaLativi*a*e. 5 a*icional est previsto nas conven-es e acor*os coletivos e *eve ser pago tam !m no =Bo salrio" nas f!rias e no recesso. c9 Fescanso Jemanal &emunera*o3 correspon*e a =?I so re a remunera-.o total" ou se/a" *eve ser calcula*o so re a soma *o salrioL ase" *a horaL ativi*a*e" *as horas extras e *emais a*icionais. Assim" o salrio *o professor ! *a*o pela soma *o salrioL ase" horaL ativi*a*e e FJ&. Escreva um programa que *a*o o n:mero *e aulas semanais e o valor *e ca*a aula" calcula o valor *o salrio *e um professor. Exi ir3 salrio ase" hora ativi*a*e" *escanso semanal remunera*o e salrio mensal. 8<onte3 JinproLJP9

33

,xerc.cios
N. Voc' *ese/a simular um sistema *e investimento a uma taxa *e /uros constante. Jeu programa *ever rece er o capital" a taxa mensal *e /uros e o per%o*o em meses. 2omo resposta *ever ser mostra*o o montante ap#s o per%o*o *e aplica-.o. Para o clculo *o /uros compostos utili+e a f#rmula3 montante G capitalY 88=P taxa?=@@9 a perio*o9 >. Escreva um programa que rece e a *ata *e nascimento *e uma pessoa e a *ata *e ho/e" e calcule aproxima*amente" quantos *ias ela viveu. 2onsi*ere um m's com B@ *ias e um ano com BI> *ias. 2alcule aproxima*amente" o tempo em meses e em anos. I. <a-a um programa que rece a o ano *e nascimento *e uma pessoa e o ano atual" calcule e mostre3 a. a. A i*a*e *essa pessoa, . . ;uantos anos ela ter em A@>@.

34

,xerc.cios
M. 5 custo ao consumi*or *e uma carro novo ! a soma *o pre-o *e f rica com o percentual *e lucro *o *istri ui*or e *os impostos aplica*os ao pre-o *e f rica. <a-a um programa que rece a o pre-o *e f rica *e um ve%culo" o percentual *e lucro *o *istri ui*or e o percentual *e impostos" calcule e mostre3 a. 5 valor correspon*ente ao lucro *o *istri ui*or, . 5 valor correspon*ente aos impostos, c. 5 pre-o final *o ve%culo. K. <a-a um programa que rece a o n:mero *e horas tra alha*as e o valor *o salrio m%nimo" calcule e mostre o salrio a rece er seguin*o as regras3 a. A hora tra alha*a vale a meta*e *o salrio m%nimo, . o salrio ruto equivale ao n:mero *e horas tra alha*as multiplica*o pelo valor *a hora tra alha*a. c. o imposto equivale a B` *o salrio ruto. *. o salrio a rece er equivale ao salrio ruto menos o imposto.

35

,xerc.cios
O. Ja eLse que o quiloCatt *e energia custa um quinto *o salrio m%nimo. <a-a um programa que rece a o valor *o salrio m%nimo e a quanti*a*e *e quiloCatts consumi*a por uma resi*'ncia" calcule e mostre3 a. 5 valor *e ca*a quiloCatt, . 5 valor a ser pago por essa resi*'ncia, c. 5 valor a ser pago com *esconto *e =>`. =@. <a-a um programa que rece a o custo *e um espetculo teatral e o pre-o *o convite *esse espetculo. Esse programa *ever calcular e mostrar a quanti*a*e *e convites que *evem ser ven*i*os para que pelo menos o custo *o espetculo se/a alcan-a*o.

3!

Cr9ditos E BeferOncias Lib'iograficas


LM-ICA AJ2E72)5" A. <. c." 2AZP5J" E.A.V. <un*amentos *a Programa-.o *e 2omputa*ores3 algoritmos" Pascal" 2?2PP e Dava" Aa E*i-.o J.o Paulo3 Pearson A@@M 2ap%tulo B 0 p. =I a NO FE)1E6" Paul e FE)1E6 Dava como Programar" Ka E*i-.o" J.o Paulo3 Pearson" A@=@ PHcA" Jan*ra e &)JJE1)" cerson 0 6#gica *e programa-.o e estrutura *e *a*os" Aa E*i-.o" J.o Paulo3 Person" A@@K 0 2ap%tulo N L p.BM" BO" N@" N=" NA" NN CO@PC,@,>#AB <5&(E6657E" An*r! 6.V. e E(E&JPA2HE&" HE7&) <. 2onstru-.o *e Algoritmos e Estrutura *e Fa*os" J.o Paulo3 Pearson Pretence Hall" A@=@ 2ap%tulo A 0 p.=N" =>" =I" A@ CI>Nhttp3??pt.CiSipe*ia.org?CiSi?Hnico*e" acessa*o em =>?@=?A@=B http3??CCC.oracle.com?technetCorS?/ava?co*econventionsL=>@@@B.p*f" acessa*o em AO?@=?A@=B http3??CCC.*ca.ufrn. r?daffonso?F2AK@@?p*f?algoritmosTparte=.p*f" acessa*o em AO?@=?A@=B

2opyright b A@=B Prof. &ita &o*rigues utili+a*o e mo*ifica*o pelo Prof. Henrique Poyatos so autori+a-.o. 1o*os *ireitos reserva*os. &epro*u-.o ou *ivulga-.o total ou parcial *este *ocumento ! expressamente proi i*o sem o consentimento formal" por escrito" *o professor.

3+

Potrebbero piacerti anche