Baixe o app para aproveitar ainda mais
Prévia do material em texto
Computação BásicaComputação Básica ComputaçãoComputação BásicaBásica DisciplinaDisciplina 116301116301 Prof. Prof. AlexandreAlexandre ZaghettoZaghettoProf. Prof. AlexandreAlexandre ZaghettoZaghetto zaghetto@gmail.comzaghetto@gmail.com UniversidadeUniversidade de Brasíliade Brasília InstitutoInstituto de de CiênciasCiências ExatasExatas DepartamentoDepartamento de de CiênciaCiência dada ComputaçãoComputação Computação BásicaComputação Básica O Conceito de AlgoritmoO Conceito de Algoritmo Computação BásicaComputação Básica 1. O Conceito de Algoritmo1. O Conceito de Algoritmo •• ConhecimentoConhecimento declarativodeclarativo:: �� CorpoCorpo organizadoorganizado dede informaçõesinformações factuaisfactuais (o(o queque é)é).. �� ExEx.:.: OO bolobolo comumcomum éé aa massamassa dede bolobolo básicabásica parapara confeitarconfeitar ouou rechearrechear.. ÉÉ tambémtambém umum excelenteexcelente acompanhamentoacompanhamento parapara cafécafé ouou cháchá.. 05/04/201105/04/2011 33 Computação BásicaComputação Básica 1. O Conceito de Algoritmo1. O Conceito de Algoritmo •• ConhecimentoConhecimento imperativoimperativo:: �� ÉÉ oo queque sese manifestamanifesta dada execuçãoexecução dede umauma tarefatarefa (como(como fazer)fazer).. �� ExEx.:.: BoloBolo comumcomum:: 1.1. BaterBater oo açúcaraçúcar ee aa manteiga,manteiga, comcom aa essênciaessência 05/04/201105/04/2011 44 1.1. BaterBater oo açúcaraçúcar ee aa manteiga,manteiga, comcom aa essênciaessência dede baunilhabaunilha atéaté branquearbranquear.. 2.2. AcrescentarAcrescentar asas gemasgemas umauma aa uma,uma, batendobatendo sempre,sempre, atéaté levantarlevantar bolhasbolhas.. 3.3. PeneirarPeneirar aa farinha,farinha, aa maizenamaizena ee oo fermentofermento ee irir acrescentandoacrescentando poucopouco aa pouco,pouco, alternandoalternando comcom oo leite,leite, semsem pararparar dede baterbater.. 4.4. EmEm separado,separado, baterbater asas clarasclaras emem neve,neve, comcom aa pitadapitada dede salsal.. 5.5. MisturarMisturar asas clarasclaras delicadamentedelicadamente àà misturamistura 6.6. AssarAssar emem formaforma untadauntada ee polvilhadapolvilhada comcom farinhafarinha dede trigo,trigo, emem fornoforno médio,médio, porpor aproximadamenteaproximadamente 4040 minutosminutos.. Computação BásicaComputação Básica 1. O Conceito de Algoritmo1. O Conceito de Algoritmo •• AlanAlan TuringTuring ((19121912 -- 19541954),), matemáticomatemático britânico,britânico, descrevedescreve emem 19361936 umauma máquinamáquina teórica,teórica, conhecidaconhecida comocomo MáquinaMáquina dede TuringTuring,, capazcapaz dede realizarrealizar qualquerqualquer tarefatarefa computável,computável, desdedesde queque executeexecute adequadamenteadequadamente umauma determinadadeterminada seqüênciaseqüência dede instruçõesinstruções.. •• EsseEsse seqüênciaseqüência dede instruçõesinstruções éé chamadachamada dede 05/04/201105/04/2011 55 •• EsseEsse seqüênciaseqüência dede instruçõesinstruções éé chamadachamada dede algoritmoalgoritmo.. •• EmEm 19381938,, foifoi recrutadorecrutado pelopelo departamentodepartamento dede análiseanálise criptográficacriptográfica dodo governogoverno.. •• ConseguiuConseguiu decifrardecifrar oo códigocódigo dada máquinamáquina dede criptografiacriptografia Enigma,Enigma, queque aa AlemanhaAlemanha dede HitlerHitler usavausava parapara mandarmandar mensagensmensagens militaresmilitares cifradascifradas durantedurante aa guerraguerra.. Computação BásicaComputação Básica 1. O Conceito de Algoritmo1. O Conceito de Algoritmo •• GraçasGraças aoao sistemasistema dede decodificaçãodecodificação queque eleele criou,criou, oo ReinoReino UnidoUnido passoupassou aa interceptarinterceptar asas mensagensmensagens ee localizarlocalizar osos submarinossubmarinos alemães,alemães, atacandoatacando--osos ee revertendorevertendo oo avançaravançar dada guerraguerra.. •• MasMas seuseu trabalhotrabalho eraera secreto,secreto, ee osos feitosfeitos dede TuringTuring passarampassaram semsem aclamaçãoaclamação nana épocaépoca.. 05/04/201105/04/2011 66 •• ColossusColossus:: Computação BásicaComputação Básica 1. O Conceito de Algoritmo1. O Conceito de Algoritmo •• ComoComo homossexual,homossexual, nono inícioinício dosdos anosanos 19501950 foifoi publicamentepublicamente humilhadohumilhado.. •• PerdeuPerdeu oo acessoacesso dede segurançasegurança aosaos laboratórioslaboratórios ondeonde trabalhavatrabalhava porque,porque, sobsob aa mentalidadementalidade dada GuerraGuerra FriaFria corrente,corrente, homossexuaishomossexuais erameram umauma brechabrecha nana segurançasegurança.. •• CondenadoCondenado aa terapiasterapias àà basebase dede estrogênio,estrogênio, oo que,que, dede fato,fato, 05/04/201105/04/2011 77 •• CondenadoCondenado aa terapiasterapias àà basebase dede estrogênio,estrogênio, oo que,que, dede fato,fato, equivaliaequivalia aa castraçãocastração químicaquímica ee queque teveteve oo humilhantehumilhante efeitoefeito secundáriosecundário dede lhelhe fazerfazer crescercrescer seiosseios.. •• EmEm 88 dede junhojunho dede 19541954,, umum criadocriado dede TuringTuring encontrouencontrou--oo mortomorto emem suasua residênciaresidência emem WilmslowWilmslow,, CheshireCheshire.. •• UmUm exameexame postpost--mortemmortem estabeleceuestabeleceu queque aa causacausa dada mortemorte foifoi envenenamentoenvenenamento porpor cianetocianeto.. Computação BásicaComputação Básica 1. O Conceito de Algoritmo1. O Conceito de Algoritmo •• OO conceitoconceito centralcentral dada programaçãoprogramação ee dada ciênciaciência dada computaçãocomputação éé oo dede algoritmoalgoritmo.. •• UmUm algoritmoalgoritmo éé aa descriçãodescrição dede umum padrãopadrão dede comportamento,comportamento, expressoexpresso emem termostermos dede umum repertóriorepertório bembem definidodefinido ee finitofinito dede açõesações "primitivas""primitivas",, dasdas quaisquais damosdamos porpor certocerto queque elaselas podempodem serser executadasexecutadas.. 05/04/201105/04/2011 88 •• IntroduziremosIntroduziremos dede formaforma intuitivaintuitiva aa noçãonoção dede algoritmo,algoritmo, motivandomotivando aoao mesmomesmo tempotempo asas estruturasestruturas básicasbásicas dede controlecontrole ((seqüênciaseqüência simplessimples,, alternativaalternativa ee repetiçãorepetição)) comocomo formasformas dede raciocínioraciocínio "naturais”"naturais”.. Computação BásicaComputação Básica 1. O Conceito de Algoritmo1. O Conceito de Algoritmo Linguagem Natural Algoritmo 05/04/201105/04/2011 99 Linguagem de Programação Linguagem de Máquina Computação BásicaComputação Básica 2. Algoritmos Não2. Algoritmos Não--ComputacionaisComputacionais •• SeqüênciaSeqüência SimplesSimples "traga a cesta com batatas do porão"; "traga a cesta com batatas do porão"; "traga a panela do armário";"traga a panela do armário"; "descasque as batatas"; "descasque as batatas"; “devolva a cesta ao porão“;“devolva a cesta ao porão“; 05/04/201105/04/2011 1010 Computação BásicaComputação Básica •• AlternativasAlternativas "traga a cesta com batatas do porão"; "traga a cesta com batatas do porão"; "traga a panela do armário";"traga a panela do armário"; sese "saia é clara" "saia é clara" entãoentão "coloque avental"; "coloque avental"; "descasque as batatas";"descasque as batatas"; 2. Algoritmos Não2. Algoritmos Não--ComputacionaisComputacionais 05/04/201105/04/2011 1111 "descasque as batatas";"descasque as batatas"; "devolva a cesta ao porão“;"devolva a cesta ao porão“; Computação BásicaComputação Básica •• RepetiçõesRepetições "traga a cesta com batatas do porão";"traga a cesta com batatas do porão"; "traga a panela do armário";"traga a panela do armário"; se "saia é clara" então "coloque avental"; se "saia éclara" então "coloque avental"; "descasque uma batata";"descasque uma batata"; "descasque uma batata";"descasque uma batata"; 2. Algoritmos Não2. Algoritmos Não--ComputacionaisComputacionais 05/04/201105/04/2011 1212 "descasque uma batata";"descasque uma batata"; ...... (50 vezes)(50 vezes) ""descaquedescaque uma batata";uma batata"; "devolva a cesta ao porão“"devolva a cesta ao porão“ Computação BásicaComputação Básica •• RepetiçõesRepetições "traga"traga aa cestacesta comcom batatasbatatas dodo porão"porão";; "traga"traga aa panelapanela dodo armário"armário";; sese "saia"saia éé clara"clara" entãoentão "coloque"coloque avental"avental";; sese "número"número dede batatasbatatas éé insuficiente"insuficiente" entãoentão "descasque"descasque umauma batata"batata";; 2. Algoritmos Não2. Algoritmos Não--ComputacionaisComputacionais 05/04/201105/04/2011 1313 "descasque"descasque umauma batata"batata";; sese "número"número dede batatasbatatas éé insuficiente"insuficiente" entãoentão "descasque"descasque umauma batata"batata";; ......((5050 vezes)vezes) sese "número"número dede batatasbatatas éé insuficiente"insuficiente" entãoentão "descasque"descasque umauma batata"batata";; "devolva"devolva aa cestacesta aoao porão“porão“;; Computação BásicaComputação Básica •• RepetiçõesRepetições "traga"traga aa cestacesta comcom batatasbatatas dodo porão"porão";; "traga"traga aa panelapanela dodo armário"armário";; sese "saia"saia éé clara"clara" entãoentão "coloque"coloque avental"avental";; enquantoenquanto "número"número dede batatasbatatas éé insuficiente"insuficiente" façafaça "descasque"descasque umauma batata"batata";; 2. Algoritmos Não2. Algoritmos Não--ComputacionaisComputacionais 05/04/201105/04/2011 1414 "descasque"descasque umauma batata"batata";; "devolva"devolva aa cestacesta aoao porão”porão”;; Computação BásicaComputação Básica •• UmUm algoritmoalgoritmo computacionalcomputacional éé umauma seqüênciaseqüência dede instruçõesinstruções queque manipulamanipula dadosdados.. •• InstruçõesInstruções:: comandoscomandos queque determinamdeterminam aa formaforma pelapela qualqual osos dadosdados devemdevem serser tratadostratados.. •• DadosDados:: informaçõesinformações recolhidas/fornecidasrecolhidas/fornecidas porpor diversosdiversos meiosmeios ee queque serãoserão processadasprocessadas pelopelo computadorcomputador atravésatravés dasdas 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 1515 meiosmeios ee queque serãoserão processadasprocessadas pelopelo computadorcomputador atravésatravés dasdas instruçõesinstruções.. Computação BásicaComputação Básica •• AtéAté certacerta parteparte dodo cursocurso vamosvamos implementarimplementar algoritmosalgoritmos computacionaiscomputacionais utilizandoutilizando oo PORTUGOLPORTUGOL ee aa linguagemlinguagem dede programaçãoprogramação CC.. •• DepoisDepois dede umum tempo,tempo, vamosvamos abandonarabandonar oo PORTUGOLPORTUGOL ee permanecerpermanecer apenasapenas comcom oo CC.. •• ExistemExistem váriasvárias versõesversões dede PORTUGOLPORTUGOL.. 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 1616 •• ExistemExistem váriasvárias versõesversões dede PORTUGOLPORTUGOL.. •• AA linguagemlinguagem CC foifoi propostaproposta porpor BrianBrian KernighanKernighan andand DennisDennis RitchieRitchie entreentre oo finalfinal dada décadadécada dede 19601960 ee inícioinício dada décadadécada dede 19701970.. Computação BásicaComputação Básica •• AA linguagemlinguagem foifoi padronizadapadronizada pelopelo ANSIANSI ((AmericanAmerican NationalNational StandardsStandards InstituteInstitute)) nono finalfinal dada décadadécada dede 19801980 ee ficouficou conhecidaconhecida comocomo ANSIANSI CC.. •• DesdeDesde entãoentão sofreusofreu váriasvárias alteraçõesalterações.. •• TheThe SpiritSpirit ofof CC:: 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 1717 �� TrustTrust thethe programmerprogrammer.. �� Don’tDon’t preventprevent thethe programmerprogrammer fromfrom doingdoing whatwhat needsneeds toto bebe donedone.. �� KeepKeep thethe languagelanguage smallsmall andand simplesimple.. �� ProvideProvide onlyonly oneone wayway toto dodo anan operationoperation.. �� MakeMake itit fast,fast, eveneven ifif itit isis notnot guaranteedguaranteed toto bebe portableportable.. Computação BásicaComputação Básica •• AsAs 3232 palavraspalavras reservadasreservadas definidasdefinidas nono ANSIANSI CC:: 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 1818 Computação BásicaComputação Básica •• IdentificadoresIdentificadores:: nomesnomes (rótulos)(rótulos) atribuidosatribuidos àsàs variáveis,variáveis, funçõesfunções ee estruturasestruturas dede dadosdados queque sãosão utilizadosutilizados emem algoritmosalgoritmos.. •• RegrasRegras parapara formaçãoformação dede identificadoresidentificadores:: �� oo primeiroprimeiro caracterecaractere devedeve ser,ser, obrigatoriamente,obrigatoriamente, umauma letraletra;; �� dodo segundosegundo caracterecaractere emem diantediante sãosão permitidospermitidos númerosnúmeros ee 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 1919 �� dodo segundosegundo caracterecaractere emem diantediante sãosão permitidospermitidos númerosnúmeros ee letrasletras;; �� oo símbolosímbolo dede sublinhadosublinhado (_)(_) podepode serser usadousado parapara separarseparar nomesnomes compostoscompostos;; �� nãonão sãosão permitidospermitidos espaços,espaços, caracterescaracteres acentuadosacentuados ee símbolossímbolos especiaisespeciais nana composiçãocomposição dodo nomenome dede umum identificadoridentificador;; �� palavraspalavras reservadasreservadas nãonão podempodem serser usadasusadas (ver(ver slideslide anterior)anterior);; �� háhá distinçãodistinção entreentre maiúsculomaiúsculo ee minúsculominúsculo.. Computação BásicaComputação Básica •• IdentificadoresIdentificadores �� ExemplosExemplos válidosválidos:: DataNascimentoDataNascimento DATA_DE_NASCIMENTODATA_DE_NASCIMENTO IDADEIDADE NotaNota11 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2020 NotaNota11 TRABALHOTRABALHO22 PESOPESO �� ExemplosExemplos inválidosinválidos:: 33CDCD MeuMeu NomeNome Idade&Idade& DA*TADA*TA Computação BásicaComputação Básica •• VariávelVariável:: éé umum espaçoespaço reservadoreservado nana memóriamemória dodo computadorcomputador parapara armazenararmazenar umum determinadodeterminado tipotipo dede dadodado.. •• DevemDevem receberreceber identificadoresidentificadores parapara poderempoderem serser referenciadasreferenciadas ee modificadasmodificadas quandoquando necessárionecessário.. •• UmUm programaprograma devedeve conterconter declaraçõesdeclarações queque especificamespecificam dede queque tipotipo sãosão asas variáveisvariáveis queque eleele utilizaráutilizará ee àsàs vezesvezes umum 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2121 queque tipotipo sãosão asas variáveisvariáveis queque eleele utilizaráutilizará ee àsàs vezesvezes umum valorvalor inicialinicial.. •• EmboraEmbora umauma variávelvariável possapossa assumirassumir diferentesdiferentes valores,valores, elaela sósó podepode armazenararmazenar umum valorvalor aa cadacada instanteinstante.. Computação BásicaComputação Básica •• VariávelVariável 3. Algoritmos Computacionais3. Algoritmos Computacionais 27 71.5 Idade Massa Memória 05/04/201105/04/2011 2222 71.5 ALEXANDRE . . . Massa Nome Computação BásicaComputação Básica •• TiposTipos básicosbásicos dede variávelvariável emem PortugolPortugol �� inteirointeiro:: númeronúmerointeiro,inteiro, negativo,negativo, nulonulo ouou positivopositivo.. ExEx.:.: --1515,, 00,, 101101 �� realreal:: númeronúmero real,real, negativo,negativo, nulonulo ouou positivopositivo.. ExEx.:.: --11,, --00..55,, 00,, 55,, 99..55 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2323 --00..55,, 00,, 55,, 99..55 �� caractercaracter:: conjuntoconjunto dede caracterescaracteres alfanuméricosalfanuméricos.. ExEx.:.: “AB”,“AB”, ““123123”,”, “A“A123123”” ,, “CASA”“CASA” �� logicologico:: conjuntoconjunto dede valoresvalores FALSOFALSO ouou VERDADEIROVERDADEIRO emem proposiçõesproposições lógicaslógicas.. Computação BásicaComputação Básica •• TiposTipos básicosbásicos dede variávelvariável emem CC (por(por enquantoenquanto issoisso basta,basta, depoisdepois veremosveremos muitomuito mais!)mais!):: �� intint:: númeronúmero inteiro,inteiro, negativo,negativo, nulonulo ouou positivopositivo.. ExEx.:.: -- 1515,, 00,, 101101 �� floatfloat:: númeronúmero real,real, negativo,negativo, nulonulo ouou positivopositivo.. ExEx.:.: -- 11,, --00..55,, 00,, 55,, 99..55 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2424 11,, --00..55,, 00,, 55,, 99..55 �� charchar:: apenasapenas umum únicoúnico caractercaracter alfanuméricoalfanumérico.. ExEx.:.: ‘A’,‘A’, ‘‘33’,’, ‘‘22’’ ,, ‘d’‘d’ Computação BásicaComputação Básica •• EstruturaEstrutura básicabásica dede umum algoritmoalgoritmo computacionalcomputacional emem PortugolPortugol:: algoritmo “nome_do_algoritmo" // Seção de Declarações var 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2525 <declaração de variáveis> // Seção de Comandos inicio <comandos> fimalgoritmo Computação BásicaComputação Básica •• EstruturaEstrutura básicabásica dede umum algoritmoalgoritmo computacionalcomputacional emem CC:: #include <stdio.h> #include <stdlib.h> int main() { // Seção de Declarações 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2626 // Seção de Declarações <declaração de variáveis> // Seção de Comandos <comandos> system("PAUSE"); return 0; } Computação BásicaComputação Básica •• DeclaraçãoDeclaração dede variáveisvariáveis emem PortugolPortugol:: algoritmo “declaravariaveis" // Seção de Declarações var inteiro: idade, num_de_filho real: peso, altura 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2727 real: peso, altura // Seção de Comandos inicio <comandos> fimalgoritmo Computação BásicaComputação Básica •• DeclaraçãoDeclaração dede variáveisvariáveis emem CC:: #include <stdio.h> #include <stdlib.h> int main() { int idade, num_de_filho; 3. Algoritmos Computacionais3. Algoritmos Computacionais 05/04/201105/04/2011 2828 int idade, num_de_filho; float peso, altura; // Seção de Comandos <comandos> system("PAUSE"); return 0; } Computação BásicaComputação Básica •• OperadorOperador dede atribuiçãoatribuição:: IdadeIdade == 3030;; 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador AçãoAção = Atribuição 05/04/201105/04/2011 2929 aa == bb == 11..55;; Computação BásicaComputação Básica •• OperadoresOperadores aritméticosaritméticos:: 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador AçãoAção - Subtração, também menos unário + Adição * Multiplicação 05/04/201105/04/2011 3030 * Multiplicação / Divisão % Módulo da divisão (resto) -- Decremento ++ Incremento Computação BásicaComputação Básica •• PrecedênciaPrecedência dosdos operadoresoperadores aritméticosaritméticos:: 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador PrecedênciaPrecedência ++ -- Mais alta - . * / % . 05/04/201105/04/2011 3131 OperadoresOperadores dodo mesmomesmo nívelnível dede precedênciaprecedência sãosão avaliadosavaliados pelopelo compiladorcompilador dada esquerdaesquerda parapara aa direitadireita.. ATENÇÃOATENÇÃO �� EmEm qualquerqualquer caso,caso, osos parêntesesparênteses sãosão sempresempre osos campeões!campeões! * / % . + - Mais baixa Computação BásicaComputação Básica •• MenosMenos unáriounário:: numnum11== --numnum;; 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador AçãoAção - Menos unário 05/04/201105/04/2011 3232 Computação BásicaComputação Básica •• OperadoresOperadores aritméticosaritméticos:: 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador AçãoAção - Subtração + Adição * Multiplicação 05/04/201105/04/2011 3333 delta = b*b delta = b*b –– 4*a*c;4*a*c; / Divisão Computação BásicaComputação Básica •• OperadoresOperadores aritméticosaritméticos:: numnum == 1717%%55;; 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador AçãoAção % Módulo da divisão (resto) 05/04/201105/04/2011 3434 numnum == 1717%%55;; Computação BásicaComputação Básica •• OperadoresOperadores aritméticosaritméticos dede atribuiçãoatribuição:: 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador AçãoAção a+=b a = a + b a-=b a = a – b a*=b a = a*b 05/04/201105/04/2011 3535 aa +=+= 22;; equivaleequivale aa aa == aa ++ 22;; a /=b a = a/b a%=b a = a%b Computação BásicaComputação Básica •• OperadoresOperadores dede incrementoincremento ee decrementodecremento:: 4. Algoritmos Computacionais: Operadores4. Algoritmos Computacionais: Operadores OperadorOperador AçãoAção -- Decremento ++ Incremento 05/04/201105/04/2011 3636 a++a++;; ouou aa +=+=11;; ouou aa == aa ++ 11;; bb == ++a++a;; diferedifere dede bb == a++a++;; aa----;; ouou aa --==11;; ouou aa == aa -- 11;; bb == ----aa;; diferedifere dede bb == aa----;; Computação BásicaComputação Básica •• AlgumasAlgumas funçõesfunções úteisúteis:: 5. Algoritmos Computacionais: Funções5. Algoritmos Computacionais: Funções FunçãoFunção AçãoAção pow(a,b) ab (a^b) sqrt(a) (a1/2 ou a^(1/2) )a 05/04/201105/04/2011 3737 ATENÇÃOATENÇÃO �� AsAs funçõesfunções têmtêm prioridadeprioridade sobresobre osos outrosoutros operadoresoperadores.. Computação BásicaComputação Básica •• ExemplosExemplos:: 6. Operadores e Funções: Exemplos6. Operadores e Funções: Exemplos x xx x x 1 2 32 )1( 2 ++− + 05/04/201105/04/2011 3838 Computação BásicaComputação Básica •• ExemplosExemplos:: 2*2*powpow(x,2) (x,2) –– 3*3*powpow(x,x+1)/2 + (x,x+1)/2 + sqrtsqrt(x+1)/x(x+1)/x 6. Operadores e Funções: Exemplos6. Operadores e Funções: Exemplos x xx x x 1 2 32 )1( 2 ++− + 05/04/201105/04/2011 3939 2*2*powpow(x,2) (x,2) –– 3*3*powpow(x,x+1)/2 + (x,x+1)/2 + sqrtsqrt(x+1)/x(x+1)/x Computação BásicaComputação Básica •• ExemplosExemplos:: 6. Operadores e Funções: Exemplos6. Operadores e Funções: Exemplos k hh x h 22 )3(4 3 452 −−− 05/04/201105/04/2011 4040 Computação BásicaComputação Básica •• ExemplosExemplos:: 2*h 2*h -- powpow( 45/(3*x) ( 45/(3*x) -- 4*h*(34*h*(3--h), 22*k )h), 22*k ) 6. Operadores e Funções: Exemplos6. Operadores e Funções: Exemplos k hh x h 22 )3(4 3 452 −−− 05/04/201105/04/2011 4141 2*h 2*h -- powpow( 45/(3*x) ( 45/(3*x) -- 4*h*(34*h*(3--h), 22*k )h), 22*k ) Computação BásicaComputação Básica •• ExemplosExemplos:: a+b+(34+a+b+(34+powpow(9,e))/((9,e))/(uu--sqrtsqrt(89))(89)) 6. Operadores e Funções: Exemplos6. Operadorese Funções: Exemplos 05/04/201105/04/2011 4242 Computação BásicaComputação Básica •• ExemplosExemplos:: a+b+(34+a+b+(34+powpow(9,e))/((9,e))/(uu--sqrtsqrt(89))(89)) 6. Operadores e Funções: Exemplos6. Operadores e Funções: Exemplos 934 + e 05/04/201105/04/2011 4343 89 934 − + ++ u ba e Computação BásicaComputação Básica •• ExemplosExemplos:: ((powpow(a+x, 2+w) (a+x, 2+w) –– 3*a)/23*a)/2 6. Operadores e Funções: Exemplos6. Operadores e Funções: Exemplos 05/04/201105/04/2011 4444 Computação BásicaComputação Básica •• ExemplosExemplos:: ((powpow(a+x, 2+w) (a+x, 2+w) –– 3*a)/23*a)/2 6. Operadores e Funções: Exemplos6. Operadores e Funções: Exemplos 3)( 2 axa w −+ + 05/04/201105/04/2011 4545 2 3)( 2 axa w −+ + Computação BásicaComputação Básica •• SaídaSaída dede dadosdados (via(via monitor)monitor):: �� EmEm PortugolPortugol:: escrevaescreva()() escrevaescreva("Sua idade é:", idade, "anos.");("Sua idade é:", idade, "anos."); �� Em C: Em C: printfprintf()() 7. Entrada e Saída de Dados7. Entrada e Saída de Dados 05/04/201105/04/2011 4646 printfprintf("Sua idade é: ("Sua idade é: %d%d anos. anos. \\nn", idade);", idade); printfprintf("Sua altura é: ("Sua altura é: %f%f metros. metros. \\nn", altura);", altura); printfprintf("A letra é: ("A letra é: %c%c. . \\nn", letra);", letra); \\n n �� Nova linhaNova linha Computação BásicaComputação Básica •• EntradaEntrada dede dadosdados (via(via teclado)teclado):: �� EmEm portugolportugol:: leialeia()() leialeia(idade)(idade);; leialeia(altura)(altura);; leialeia(letra)(letra);; 7. Entrada e Saída de Dados7. Entrada e Saída de Dados 05/04/201105/04/2011 4747 �� Em C: Em C: scanfscanf()() scanfscanf("("%d%d", &idade);", &idade); scanfscanf("("%f%f", &altura);", &altura); scanfscanf("("%c%c", &letra);", &letra);
Compartilhar