Baixe o app para aproveitar ainda mais
Prévia do material em texto
APRESENTAÇÃO A disciplina de Algoritmos será ministrada a nível de graduação na modalidade de EAD (ensino a distância) e seguirá uma apresentação incremental do conteúdo administrado. Inicialmente, serão propostos problemas simples e cotidianos que envolvam raciocínio lógico e que possuam solução livre. Com o decorrer do conteúdo, será apresentada uma notação formal para a solução de problemas. O assunto será ministrado mesclando conteúdos teóricos e práticos com o objetivo de capacitar os alunos a descreverem soluções de problemas matemáticos de forma estruturada, preparando-os para a aplicação do raciocínio lógico e a descrição de problemas de modo que seja possível a sua tradução para uma linguagem de programação de alto nível. EMENTA Métodos e técnicas de resolução de problemas. Algoritmos e programação estruturada: estruturas sequenciais (variáveis, comandos de entrada/saída, operadores aritméticos, operadores relacionais e operadores lógicos), estrutura de seleção ou condicionais (simples e composta), estrutura de repetição (controladas por contadores e controladas por condições). Tipos de dados homogêneos unidimensionais e multidimensionais (vetores e matrizes). OBJETIVO GERAL Capacitar o aluno na elaboração de algoritmos através do desenvolvimento do raciocínio lógico aplicado à solução de problemas computacionais, tornando-o capaz de resolver problemas simples de forma teórica e aplicá-los na prática em uma pseudolinguagem de programação. IN TRO D U ÇÃ O A PRO G RA M A ÇÃ O NÍVEL DE ENSINO: Graduação CARGA HORÁRIA: 80h PROFESSOR-AUTOR: Cristiano de Macêdo Neto 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 • Comandos de entrada e saída • Variáveis e constantes • Operadores aritméticos • Operadores lógicos e relacionais • Construção de expressões • Modularização e construção de sub-rotinas • Comandos de entrada e saída • Variáveis e constantes • Operadores aritméticos • Operadores lógicos e relacionais • Construção de expressões • Modularização e construção de sub-rotinas Objetivos Específicos • Aplicar os conceitos apresentados na unidade 2 para a construção de algoritmos sequenciais e modulares • Estruturas de seleção ou condição simples • Estruturas de seleção ou condição compostas • Aninhamento • Estruturas de repetição ou iteração controladas por contador • Estruturas de repetição ou iteração controladas por condição Objetivos Específicos • Apresentar as estruturas de seleção simples se • Apresentar as estruturas de seleção composta se ... senão • Contextualização da lógica de programação na sociedade atual • Conceitos básicos de lógica de programação • Algoritmos não computacionais e computacionais • Fases de um algoritmo computacional • Regras de construção de algoritmos computacionais • Estrutura básica de algoritmo computacional Objetivos Específicos • Contextualizar a importância da lógica de programação para a sociedade atual • Apresentar os conceitos básicos de lógica de programação • Apresentar a utilização de algoritmos não computacionais no dia a dia • Discutir as fases de um algoritmo computacional • Apresentar as regras para a construção de algoritmos computacionais • Apresentar a estrutura básica de algoritmos computacionais INTRODUÇÃO A ALGORITMOS E LÓGICA DE PROGRAMAÇÃO CONSTRUÇÃO DE ALGORITMOS SEQUENCIAIS E MODULARES ESTRUTURAS DE CONTROLE ESTRUTURAS SEQUENCIAIS E MODULARIZAÇÃO UNIDADE 1 UNIDADE 2 UNIDADE 3 UNIDADE 4 CONTEÚDO PROGRAMÁTICO Objetivos Específicos • Apresentar os comandos de entrada e saída e suas utilizações • Apresentar os conceitos de variáveis e constantes e suas utilizações • Apresentar os operadores aritméticos e seu comportamento • Apresentar os operadores relacionais e lógicos e seu comportamento • Desenvolver a habilidade de construção de expressões e sua utilização • Apresentar o conceito de modularização • Desenvolver a habilidade de modularizar problemas em unidade menores 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 • Tipos de dados homogêneos unidimensionais ou vetores • Tipos de dados homogêneos multidimensionais ou matrizes Objetivos Específicos • Apresentar os conceitos relativos a vetores • Apresentar os conceitos relativos a matrizes • Tipos de dados homogêneos unidimensionais ou vetores • Tipos de dados homogêneos multidimensionais ou matrizes Objetivos Específicos • Aplicar os conceitos apresentados na unidade 6 para aperfeiçoar a construção de algoritmos com a adoção de vetores e matrizes • Construção de algoritmos computacionais utilizando todo o conteúdo ministrado Objetivos Específicos • Construir algoritmos computacionais para solução de problemas, adotando todo o conteúdo ministrado • Resolução de desafios TIPO DE DADOS HOMOGÊNEOS: VETORES E MATRIZES CONSTRUÇÃO DE ALGORITMOS COM UTILIZAÇÃO DE TIPOS DE DADOS HOMOGÊNEOS CONSTRUÇÃO DE ALGORITMOS COMPUTACIONAIS EM PSEUDOCÓDIGO UNIDADE 6 UNIDADE 7 UNIDADE 8 • Apresentar a técnica de aninhamento de estruturas de seleção • Apresentar as estruturas de repetição controladas por contadores • Apresentar as estruturas de repetição controladas por condição • Estruturas de seleção ou condição simples • Estruturas de seleção ou condição compostas • Estruturas de repetição ou iteração controladas por contador • Estruturas de repetição ou iteração controladas por condição Objetivos Específicos • Aplicar os conceitos apresentados na unidade 4 para aperfeiçoar a construção de algoritmos com a adoção de estruturas de controle CONSTRUÇÃO DE ALGORITMOS COM ESTRUTURAS DE CONTROLEUNIDADE 5 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 BÁSICA ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene Aparecida Veneruchi de. Fundamentos da programação de computadores: algoritmos, Pascal, C/C++ (padrão ANSI) e Java. 3 ed. São Paulo: Pearson Education do Brasil, 2012. DASGUPTA, Sanjoy; PAPADIMITRIOU, Christos; VAZIRANI, Umesh. Algoritmos. Porto Alegre: AMGH, 2011. 1 recurso online. ISBN 9788563308535. Disponível em: <http://integrada.minhabiblioteca. com.br/books/9788563308535>. SOFFNER, Renato. Algoritmos e programação em linguagem C. São Paulo: Saraiva, 2013. 1 recurso online. ISBN 9788502207530. Disponível em: <https://integrada.minhabiblioteca.com.br/ books/9788502207530>. COMPLEMENTAR AGUILAR, Luis Joyanes. Programação em c++: algoritmos, estruturas de dados e objetos. 2 ed. Porto Alegre: AMGH, 2008. 1 recurso online. ISBN 9788580550269. Disponível em: <https://integrada.minhabiblioteca.com.br/ books/9788580550269>. ZIVIANI, Nivio. Projeto de algoritmos: com implementações em JAVA e C++. São Paulo: Cengage Learning, 2012. 1 recurso online. ISBN 9788522108213. Disponível em: <https://integrada.minhabiblioteca.com.br/ books/9788522108213>. FORBELLONE, André Luiz Villar; EBERSPÄCHER, Henri Frederico. Lógica de Programação - A construção de algoritmos e estruturas de dados. 3 ed. São Paulo: Pearson Education, 2005. Disponivel em: <http://una.bv3.digitalpages. com.br/users/publications/9788576050247/ pages/_1>. JORGE, Marcos. Java. São Paulo: Pearson, 2004. Disponivel em: <http://una.bv3.digitalpages. com.br/users/publications/9788534615266/ pages/_1>. SCHILDT, Herbert; SKRIEN, Dale. Programaçãocom java: uma introdução abrangente. Porto Alegre: AMGH, 2013. 1 recurso online. ISBN 9788580552683. Disponível em: <https://integrada.minhabiblioteca.com.br/ books/9788580552683>. BIBLIOGRAFIA COMPETÊNCIAS • Desenvolver soluções algorítmicas para problemas computacionais. • Construir algoritmos formalmente especificados em pseudolinguagem ou fluxograma que contemplem as construções fundamentais de programação de computadores: variáveis, constantes, expressões, atribuições, estruturas de seleção e repetição, vetores e matrizes. • Analisar e interpretar algoritmos formalmente especificados em pseudolinguagem ou fluxograma que contemplem as construções fundamentais de programação de computadores: variáveis, constantes, expressões, atribuições, estruturas de seleção e repetição, vetores e matrizes. HABILIDADES • Possibilitar ao aluno o desenvolvimento de formas de representações computacionais de problemas reais, através de algoritmos simples. • Capacitar o aluno para a construção de programas de computador em formato algorítmico. 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8 43 18 03 56 89 8
Compartilhar