Baixe o app para aproveitar ainda mais
Prévia do material em texto
AlgoritmosAlgoritmos Primeira PartePrimeira Parte InstrutorInstrutor �� Cyro Cyro ThadeuThadeu �� EE--mail : mail : cyro.thadeu@gmail.comcyro.thadeu@gmail.com �� MSN : MSN : cyrothadeu@hotmail.comcyrothadeu@hotmail.com IntroduIntroduççãoão �� Um algoritmo Um algoritmo éé uma uma sequênciasequência de de instruinstruçções, baseadas em raciocões, baseadas em raciocíínios, nios, ordenadas de forma lordenadas de forma lóógica para resolugica para resoluçção ão de uma determinada tarefa ou problema.de uma determinada tarefa ou problema. �� Forma de resolver um problema, Forma de resolver um problema, organizando os procedimentos organizando os procedimentos passopasso--aa-- passopasso. . IntroduIntroduççãoão �� Em nosso diaEm nosso dia--aa--dia pensamos e executamos tarefas, dia pensamos e executamos tarefas, de forma algorde forma algoríítmica sem saber que o estamos tmica sem saber que o estamos fazendo (esses chamados de algoritmos não fazendo (esses chamados de algoritmos não computacionais).computacionais). �� Ex: Utilizando um Telefone PEx: Utilizando um Telefone Púúblicoblico 1.1. Tirar o fone do gancho;Tirar o fone do gancho; 2.2. Ouvir o sinal de linha;Ouvir o sinal de linha; 3.3. Introduzir o cartão;Introduzir o cartão; 4.4. Teclar o nTeclar o núúmero desejado;mero desejado; 5.5. Se der o sinal de chamar;Se der o sinal de chamar; 1.1. Conversar;Conversar; 2.2. Desligar;Desligar; 3.3. Retirar o Cartão;Retirar o Cartão; 6.6. Senão;Senão; 1.1. Repetir;Repetir; 7.7. Fim;Fim; Sistemas ComputacionaisSistemas Computacionais �� Um sistema de computador, Um sistema de computador, éé feito feito utilizando algoritmos sobre uma utilizando algoritmos sobre uma linguagem de programalinguagem de programaçção.ão. �� Baseado na estrutura bBaseado na estrutura báásica de sica de computacomputaçção: Entrada > Processamento > ão: Entrada > Processamento > SaSaíídada ENTRADA SAÍDA PROCESSAMENTO Sistemas ComputacionaisSistemas Computacionais �� Este Este éé o conceito bo conceito báásico de computasico de computaçção. Os ão. Os dados são informados ao computador, para dados são informados ao computador, para serem processados. Este processamento serem processados. Este processamento éé feito feito atravatravéés de um s de um algoralgoríítmotmo (racioc(raciocíínio lnio lóógico), e gico), e apapóós isso s isso éé gerado uma sagerado uma saíída.da. �� Ex:Ex: �� Informo ao computador: Banana, Leite e Informo ao computador: Banana, Leite e AAççuaruar, ap, apóós o s o processamento meu resultado serprocessamento meu resultado seráá vitamina de banana.vitamina de banana. �� Informo ao computador uma gama de informaInformo ao computador uma gama de informaçções ões financeiras, ao final do processamento meu resultado serfinanceiras, ao final do processamento meu resultado seráá relatrelatóórios de vendas, com grrios de vendas, com grááficos e estatficos e estatíísticas.sticas. ExercExercíícioscios �� Crie um algoritmo que descreva Crie um algoritmo que descreva passopasso--aa--passopasso como você faz para escovar os dentes.como você faz para escovar os dentes. �� Crie um algoritmo que descreva Crie um algoritmo que descreva passopasso--aa--passopasso o processo de fazer compras em um o processo de fazer compras em um supermercado.supermercado. �� Crie um algoritmo que descreva todo o processo Crie um algoritmo que descreva todo o processo para criapara criaçção de um documento no Microsoft ão de um documento no Microsoft Word em seu computador.Word em seu computador. �� Crie um algoritmo que descreva todo o processo Crie um algoritmo que descreva todo o processo para trocar do pneu de um carro.para trocar do pneu de um carro. Linguagens de ProgramaLinguagens de Programaççãoão �� Para que esses algoritmos (Para que esses algoritmos (racracííociniosocinios) possam ) possam ser interpretados pela CPU do computador, ser interpretados pela CPU do computador, éé necessnecessáário que sejam implementados (escritos), rio que sejam implementados (escritos), utilizando alguma linguagem de programautilizando alguma linguagem de programaçção.ão. �� O Processo O Processo éé feito atravfeito atravéés da codificas da codificaçção dos ão dos algoritmos atravalgoritmos atravéés de estruturas.s de estruturas. �� Linguagens de programaLinguagens de programaçção são softwares ão são softwares responsresponsááveis por interpretar e compilar os veis por interpretar e compilar os ccóódigos.digos. �� A CompilaA Compilaçção de um algoritmo codificado ão de um algoritmo codificado éé a a transformatransformaçção dos cão dos cóódigos em linguagem de digos em linguagem de mmááquina, aquela o qual a CPU interpreta.quina, aquela o qual a CPU interpreta. Linguagens de ProgramaLinguagens de Programaççãoão �� Exemplo de algumas linguagens de programaExemplo de algumas linguagens de programaçção e posião e posiçção em relaão em relaçção ao ão ao mercadomercado �� Pascal Pascal -- Hoje em dia utilizados apenas como conteHoje em dia utilizados apenas como conteúúdo acadêmico para estudo, do acadêmico para estudo, comercialmente não comercialmente não éé utilizado.utilizado. �� Clipper Clipper -- Ainda existem alguns sistemas feitos em Ainda existem alguns sistemas feitos em clipperclipper, a necessidade de um , a necessidade de um programador em programador em clipperclipper seria apenas para manutenseria apenas para manutençção desses sistemas. Não ão desses sistemas. Não são mais utilizados comercialmente.são mais utilizados comercialmente. �� C / C++ C / C++ -- Linguagem referência a todas as outras linguagens, a partir delLinguagem referência a todas as outras linguagens, a partir dela que a que surgiu muitos do principais conceitos de programasurgiu muitos do principais conceitos de programaçção. Um bom programador ão. Um bom programador C/C++ no mercado C/C++ no mercado éé sempre bem visto. Apesar de hoje em dia não existir sempre bem visto. Apesar de hoje em dia não existir muitas oportunidades, mas tem uma boa remuneramuitas oportunidades, mas tem uma boa remuneraçção.ão. �� Visual Visual BasicBasic -- Ainda usado hoje em dia para criaAinda usado hoje em dia para criaçção de alguns sistemas e ão de alguns sistemas e manutenmanutençção de outros, com forte tendência a migrar totalmente para a novão de outros, com forte tendência a migrar totalmente para a nova a tecnologia .NET, o que jtecnologia .NET, o que jáá vem acontecendo.vem acontecendo. �� DelphiDelphi -- Baseado em Pascal, encontraBaseado em Pascal, encontra--se na mesma situase na mesma situaçção do que o Visual ão do que o Visual BasicBasic.. �� Java Java -- Uma das mais modernas plataformas de desenvolvimento, Uma das mais modernas plataformas de desenvolvimento, implementando os principais conceitos de programaimplementando os principais conceitos de programaçção e mais atuais. E ão e mais atuais. E considerado uma linguagem completa e com muitos recursos e flexiconsiderado uma linguagem completa e com muitos recursos e flexibilidades.bilidades. TTéécnicas de Programacnicas de Programaççãoão �� ProgramaProgramaçção ão SequencialSequencial �� ProgramaProgramaçção Estruturadaão Estruturada �� ProgramaProgramaçção Orientada a Objetosão Orientada a Objetos TTéécnicas de Programacnicas de Programaççãoão �� PortugolPortugol ( Português Estruturado ) ( Português Estruturado ) �� Para o aprendizado inicial de Para o aprendizado inicial de algoralgoríítimostimos iremos utilizar o Português Estruturado para iremos utilizar o Português Estruturado para criacriaçção de algoritmos ão de algoritmos sequenciaissequenciais. Est. Estáá éé considerada uma pseudoconsiderada uma pseudo--linguagem.linguagem. �� Não Não éé uma linguagem de implementauma linguagem de implementaçção ão especespecíífica, apenas de definifica, apenas dedefiniçções.ões. �� Uma mistura de Português + Algoritmos.Uma mistura de Português + Algoritmos. TTéécnicas de Programacnicas de Programaççãoão �� ProgramaProgramaçção Estruturada ão Estruturada �� Forma de programaForma de programaçção que consiste em, ão que consiste em, criar um programa baseado em criar um programa baseado em procedimentos que executam determinadas procedimentos que executam determinadas operaoperaçções dentro do sistema. O Programa ões dentro do sistema. O Programa termina, quando o ultimo procedimento for termina, quando o ultimo procedimento for executado.executado. �� Linguagens antigas como C, Pascal, Clipper Linguagens antigas como C, Pascal, Clipper utilizautilizaçção esse padrão de programaão esse padrão de programaçção.ão. TTéécnicas de Programacnicas de Programaççãoão �� ProgramaProgramaçção Orientada a Objetos ão Orientada a Objetos �� Conceito mais moderno em termos de Conceito mais moderno em termos de programaprogramaçção. Caracterão. Caracteríística por enxergar stica por enxergar entidades do mundo real, abstraindoentidades do mundo real, abstraindo--as e as e transformando em objetos computacionais. transformando em objetos computacionais. Tornando a programaTornando a programaçção mais prão mais próóxima dos xima dos conceitos reais.conceitos reais. �� Linguagens como Java, C++/C#, Linguagens como Java, C++/C#, DelphiDelphi ( ( ObjectObject Pascal ), implementam o paradigma Pascal ), implementam o paradigma de orientade orientaçção a objetos.ão a objetos. Estruturas de ProgramaEstruturas de Programaççãoão �� Estruturas Estruturas SequenciaisSequenciais �� Estruturas de Decisão Estruturas de Decisão �� Desvio de FluxoDesvio de Fluxo �� LLóógica gica booleanabooleana �� Estruturas de CondiEstruturas de Condiççãoão �� Estruturas de RepetiEstruturas de Repetiççãoão
Compartilhar