Prévia do material em texto
Plano de Ensino e Aprendizagem - Graduação Curso Análise e Desenvolvimento de Sistemas; Banco de Dados; Ciências da Computação; Gestão de Tecnologia da Informação; Segurança da Informação; Sistemas de Informação; Sistemas para Internet; Engenharia Biomédica; Engenharia Civil. Disciplina Algoritmos e Lógica de Programação Modalidade: EAD Carga horária: 80h Vigência: 2024.1 Ementa A disciplina Algoritmo e Lógica de Programação aborda algoritmos e suas representações, técnicas de análise de algoritmos, lógica de programação, constantes, variáveis, estruturas de controle, modularização, vetores, registros e passagem de parâmetros, ordenação e busca. Contempla ainda algoritmos recursivos, alocação de memória dinâmica e manipulação de ponteiros, conceitos de linguagem de programação (código-fonte, código-objeto, bibliotecas, programa executável, compilação e execução), bem como, programação em linguagem C, comandos de decisão, seleção, repetição etc. Aborda também, matrizes, vetores, funções, structs, uso de arquivos de textos e binários, listas encadeadas. Essa disciplina é integrada de forma vertical promovendo o desenvolvimento de competências, ou seja, a capacidade pessoal de mobilizar, articular e colocar em ação conhecimentos, habilidades, atitudes e valores necessários para o desempenho eficiente e eficaz de atividades requeridas pela natureza do trabalho e pelo desenvolvimento tecnológico pelo Projeto Integrado. Objetivos de aprendizagem Analisar e resolver problemas computacionais. Dominar comandos lógicos e resultados aplicados à programação. Desenvolver a lógica de programação por meio de uma linguagem de programação estruturada. Dominar a utilização de estrutura de controle e decisão, inerentes aos paradigmas dos algoritmos. Interpretar textos para identificar os componentes básicos visando a criação de uma solução. Escolher a melhor estrutura e o melhor algoritmo para a solução de um determinado problema. Avaliar algoritmos utilizando teste de mesa. Implementar algoritmos em linguagens de programação C ou Python. Conteúdo Programático Tópico de estudo 1 Lógica de Programação: Conceitos Fundamentais o Abordagem Contextual da Lógica de Programação o Algoritmo o Fluxograma Convencional o Pseudocódigo o Introdução à lógica o Princípios da Resolução de Problemas o Paradigmas de diagramação o Paradigma da Programação Estruturada o Estrutura de Sequência o Elementos da Pseudolinguagem o Procedimento e funções o Tipos de Dados Primitivos Plano de Ensino e Aprendizagem - Graduação o Teste de mesa Tópico de estudo 2 Elementos básicos da lógica de programação o A escolha de linguagem de programação o Transformado o algoritmo em código o Expressões o Manipulação de Dados em Memória o Variáveis o Constantes o Operadores Aritméticos Tópico de estudo 3 Controle de fluxo do programa o Tomada de Decisão o Comandos de Seleção o O Operador Ternário o Programação com laços o Comandos de desvios Tópico de estudo 4 Tópicos Avançados de Lógica de Programação o Matrizes e Strings o Vetores Unidimensionais o Ponteiros o Recursão o Funções o Chamada por valor e por referência o Função com parâmetro do tipo matriz o Ordenação e Busca o Métodos de pesquisa o Uso de arquivos de texto Metodologia Aulas ao vivo: momento pedagógico de interação Professor-Aluno, e com os demais colegas, em que os conteúdos são desenvolvidos de forma dialógica, apoiados em fundamentação teórica, exemplificação, estudos de caso, resolução de exercícios e atividades práticas com o objetivo de construir e cocriar conhecimento. Posteriormente, a gravação da aula permanecerá disponível aos alunos; Caixa de entrada: espaço de conexão contínua para a troca de mensagens entre professor, tutor e aluno que abrange o dia a dia das disciplinas; Fórum de discussão: a partir de um tema relevante, contextualizado e proposto pelo professor, o aluno apresenta sua visão crítica. Dessa forma, estabelecem-se a reflexão e o debate com os demais colegas, mediados pelo docente; Fórum de dúvidas: local especialmente reservado para a exposição das dúvidas dos alunos e posterior esclarecimento pelos professores e tutores; Materiais adicionais: material de suporte ao conteúdo que visa a aumentar o conhecimento e possibilitar uma maior reflexão sobre os temas apresentados nas aulas e nos e-books, podendo ser artigos, vídeos, sites especializados, software de aplicação etc.; Momentos avaliativos: a disciplina conta com atividades e avaliações que envolvem a verificação e a reflexão do que foi estudado de forma dinâmica, com questões dissertativas e de múltipla escolha; Podcasts: em formato de áudio, essa mídia amplia de maneira contextualizada, situacional e lúdica os conteúdos apresentados e discutidos nos e-books e nas aulas; Vídeos: material adicional e complementar que, por meio de entrevistas com especialistas e profissionais Plano de Ensino e Aprendizagem - Graduação da área, depoimentos e reportagens, sintetiza, amplia e apoia o conteúdo das aulas e dos e-books nos seus temas mais relevantes, reforçando a aplicabilidade dos principais conceitos. Avaliação do Aprendizado O Processo Avaliativo está organizado em duas grandes etapas: Avaliação Online 1: A Avaliação Online 1 é composta por atividades relativas a cada tópico de estudo, disponibilizadas online, de forma que o estudante as realize durante o processo formativo da disciplina. Tópico de estudo 1 – Atividade Dissertativa Tópico de estudo 2 – Atividades Objetivas Tópico de estudo 3 – Atividades Objetivas Tópico de estudo 4 – Atividades Objetivas As notas obtidas em cada Atividade Avaliativa da Avaliação Online 1 corresponderão a 40% da Média Final. Avaliação Online 2: A Avaliação Online 2 é composta por questões objetivas. A nota obtida nesta Avaliação Online 2 corresponde a 60% da Média Final. São considerados aprovados os estudantes que obtiverem Média Final igual ou superior a 6,0 (seis) e frequência mínima de 75%, que será computada por meio da realização das atividades, respeitando os prazos determinados pelo Calendário Acadêmico, ambos disponibilizados no ambiente virtual. Aulas síncronas online Estão programadas aulas ao vivo, realizadas por meio de plataformas online associadas ao Canvas, que permitirão, ao estudante, interação com os pares, com o professor e o aprofundamento do conteúdo. As aulas ficarão disponíveis ao estudante em seu ambiente virtual durante o semestre. Bibliografia Básica ASCÊNCIO, A. F. G; CAMPOS, E. A. V. 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. Livro digital. Disponível em: [Biblioteca Virtual]. Acesso em: 26 abr. 2023. ASCÊNCIO, A. F. G. ARAÚJO, G. S. de. Estrutura de dados: algoritmos, análise de complexidade e implementações em JAVA e C/C++. São Paulo: Person Prentice Hall, 2010. Livro digital. Disponível em: [Biblioteca Virtual]. Acesso em: 26 abr. 2023. MIZRAHI, V. V. Treinamento em linguagem C. 2. ed. São Paulo: Pearson Prentice Hall, 2008. Livro digital. Disponível em: [Biblioteca Virtual]. Acesso em: 26 abr. 2023. SOUZA, Marco A. Furlan de et al. Algoritmos e lógica de programação: um texto introdutório para a engenharia. 3. ed. São Paulo: Cengage Learning, 2019. Livro digital. Disponível em: [Minha Biblioteca]. Acesso em: 26 abr. 2023. Bibliografia Complementar Acesse o Calendário no seu Ambiente de Estudos Plano de Ensino e Aprendizagem - Graduação FORBELLONE, A. L. V.; EBERSPACHER, H. F. Lógica de programação: a construção de algoritmos e estruturas de dados. 3.ed. São Paulo: Pearson Prentice Hall, 2005. Livro digital. Disponível em: [Biblioteca Virtual]. Acesso em: 26 abr.2023. LEAL, G. C. L. Linguagem, programação e banco de dados: guia prático de aprendizagem, Curitiba: Intersaberes, 2015. Livro digital. Disponível em: [Biblioteca Virtual]. Acesso em: 26 abr. 2023. PUGA, S.; RISSETI, G. Lógica de Programação e Estrutura de Dados: com aplicações em Java. 2. ed. São Paulo: Prentice Hall, 2009. Livro digital. Disponível em: [Biblioteca Virtual]. Acesso em: 26 abr. 2023. ALVES, William P. Linguagem e Lógica de Programação. São Paulo: Saraiva, 2013. Livro digital. Disponível em: [Minha Biblioteca]. Acesso em: 26 abr. 2023. SUTTER, H. Programação Avançada em C++: 40 novos quebra-cabeças de engenharia, problemas de programação e soluções. São Paulo: Pearson, 2013. Livro digital. Disponível em: [Biblioteca Virtual]. Acesso em: 26 abr. 2023.