Escolar Documentos
Profissional Documentos
Cultura Documentos
ALGORITMOS: CONCEITOS
ALGORITMOS
Muitojseimaginousobrea possibilidadedecomputadores inteligentes....
HAL9000,computadorinteligentedo clssico2001,UmaOdissianoEspao
ALGORITMOS
MAS... computadoressoburros muitoprestativos! Soincrivelmenterpidos,com umapacinciainfinitaeumamemriainfalvel... Umcomputadorfazexatamenteoquevocpedir,quantasvezesvoc ordenar,semnuncaesquecerdenemumdetalhe!Etudoissomuito rapidamente. Aartedaprogramaoestemcombinaraintelignciahumana(do programador)comaburriceincrivelmenterpidaeeficientedo computador...
ALGORITMOS
Paraocomputadorresolverumproblema,vocprecisadeum ALGORITMO.
UMARECEITA...
Ingredientes: DADOSDEENTRADA... 5ovos 250gramasdemargarinacremosa 2xcaras(ch)deacar 1xcara(ch)defarinhadetrigo 1xcara(ch)dechocolate 200gramasdeccoralado 1copodeleite 1colher(sopa)defermento
UMARECEITA...
MododePreparo:
PROCESSAMENTO
UMARECEITA...
SADA
UMARECEITA...
MAS...
bataonde? comoqu?
Bataamargarina,asgemaseoacaratficar juntarcomoqu? cremoso Junteoleite,occoeafarinhaecontinue acrescentaraoqu? batendo Acrescenteofermentoe,porltimo,asclarasem neve Unteumaformacommanteigaeleveaoforno paraassar
UMARECEITA...
MAS...
bataonde? comoqu?
Comoocomputadorumamquina,ele precisadeumareceitamuitobem Acrescenteofermentoe,por ltimo,asclarasem explicada,nosseusmnimosdetalhes.jnoacabou? neve Elenotemintelignciaparalidarcom nenhumasituaoimprevista,etambm Unteumaformacommanteigaeleveaoforno paraassar novaisubentendernenhumdetalheque nosejaexplicitamentedeclarado.
ALGORITMOS
Umalgoritmopararealizaratrocadeuma lmpada Pegar uma escada Posicionar a escada embaixo da lmpada Buscar uma lmpada nova Subir na escada Retirar a lmpada velha Colocar a lmpada nova
ALGORITMOS
Esealmpadanoestiverqueimada?
1. Acionar o interruptor 2. Se a lmpada no acender, ento Pegar uma escada Posicionar a escada embaixo da lmpada Buscar uma lmpada nova Subir na escada Umalgoritmodeveprevertodootipo Retirar a lmpada queimada desituaoimprevista... Colocar a lmpada nova
esenohouver lmpadano estoque?
ALGORITMOS
Algoritmosdevemsercompostosporaessimpleseprecisas. Somardoisnmerosumpossvelpassodeumalgoritmo, guardarumarquivonolugarondeeuvmelembrardepoisno nemsimples,nempreciso.... Umalgoritmodevelevaremcontatodospossveisimprevistos. Umasituaoinesperadageralmentelevaafalhasnaexecuodo programaou,piorainda,emresultadoserradossemalerta...
SOLUODEPROBLEMAS
Porisso,antesquemaisnada,umcientistadacomputao deveterbemdesenvolvidaahabilidadedesoluode problemas; Ouseja,precisotreinarahabilidadedeformular corretamentequestes,pensarcriativamentesobresolues possveiseexpressarumasoluodeformaclaraeprecisa; Aprender a programar uma excelente oportunidade de praticarashabilidadesdasoluodeproblemas.
ALGORITMOS Emresumo:
Sevocnosaberesolverumproblema, noocomputadorquevaiensinarparavoc!
Vocgeralmenteprecisaestudaremprofundidadeoproblema quequerresolver,paraentenderasoluoetraduzilanaforma deumalgoritmoquepossaserexecutadopelocomputador... Nesteprocesso,amodelagemeaprogramaoorientadaa objetosajudamaorganizaroproblemaequebrloempartes maissimples...
ALGORITMOS
EXEMPLO GERENTE
+investe(doublevalor) ....
public class Gerente { // ... public void investe(double valor) { // aqui vai o algoritmo // para a execuo da ao! } } se (valor > saldoCC) retira valor da CC aplica valor no fundo seno avisa investidor fim
ALGORITMOS
Podehavervriosalgoritmospararesolver ummesmoproblemasimplesmenteporque podehavervriassoluesdiferentesparao mesmoproblema. Nemtodososalgoritmosso igualmentebons. Umalgoritmotomelhor(maiseficiente) quantomaissimples, maisrpido,menospropensoafalhase situaesimprevistaselefor... Aproduodeumalgoritmoeficienteexige,almdecriatividade ecapacidadederesoluodeproblemas,muitoconhecimentoe experincia.
ALGORITMOPASSOSPARACONSTRUO
Identificaroproblema(objetivo) medianteleituraatentadeseu enunciado(entendimento) Identificarnoenunciadoosdadosa seremfornecidosparaoalgoritmo(entradade dados) Identificarosresultadosquedevemser geradosnasoluo(sadadedados) Determinaroquedeveserfeitopara transformarasentradasnassadasdesejadas (processamento)
ALGORITMOSExerccio
Escrevaumalgoritmoparasomardoisnmerosquaisquer
1. 2. 3. 4.
Entrada
Processamento
Sada
Nmero X Nmero Y
Somar X e Y
Resultado da soma
ALGORITMOS
Aconstruesdealgoritmosbaseadaem: Instrues ou Comandos: frases que indicam as aes a seremexecutadas.Porexemplo: Some(Somar)doisnmeros
Imprima(Imprimir)resultadodasoma
Tomadas de deciso: compara dois valores, ou testa uma condio, e toma uma ao dependendo do resultado do teste/comparao... Estruturas de Repetio: repete certos comandos um determinadonmerodevezes.
ODESVIOCONDICIONAL No desvio condicional simples uma condio avaliada e, se o resultado for verdadeiro, um conjunto de instrues executado
Java if (<condio>) { <instrues>; } Java if (<condio>) <instruo>;
ODESVIOCONDICIONAL
Exemplo:Seamdiadasnotasdoalunoformaiorou iguala7,imprimirAprovado
if ( media >= 7.0 ) System.out.println(Aprovado );
verdadeiro media>=7 Imprimir Aprovado
falso
ODESVIOCONDICIONAL
Um desvio condicional tambm usado para executar uma ao ou outra, dependendo de uma condioaseravaliada...
falso ImprimirReprovado
ODESVIOCONDICIONAL
Java if (<condio>) { <instrues>; } else { <instrues>; } Java if (<condio>) <instruo>; else <instruo>;
ODESVIOCONDICIONAL