Algoritmos e lógica de programação

Tecnologia em sistemas para internet

Explore abaixo os conteúdos disponíveis para esta disciplina.

Páginas

Apresentação do Professor

👨‍🏫 Apresentação do Professor

Nome: Diego Cordeiro de Oliveira

Formação: Bacharel em Ciência da Computação, Especialista em Engenharia de Sistemas

Experiência Profissional: Desenvolvedor (Python 🐍 & Ruby 💎), especialista em Docker 🐳, CI/CD 🚀 e GIT 🗂️

Experiência Acadêmica: Analista de TI e Professor desde 2013 👨‍💻

Ementa

Conceito de algoritmo, lógica de programação e programação estruturada. Representação de algoritmos: pseudo linguagem x diagramas x linguagem de programação. Tradução de algoritmos de alto nível para linguagem de máquina: compiladores, interpretadores, tradutores e montadores. Tipos de linguagens de programação: baixo nível, alto nível, linguagens compiladas e interpretadas. Sintaxe da linguagem de programação. Construção de algoritmos em linguagem de programação. Operador de atribuição, operadores aritméticos, lógicos e relacionais. Metodologia de desenvolvimento de algoritmos. Tipos de dados e declaração de variáveis e constantes. Comandos de entrada e saída de dados. Estruturas de decisão. Estruturas de repetição. Arrays (vetores e matrizes). Strings. Sub-rotinas (funções/métodos).

Objetivo Geral / Competências

  • Proporcionar o desenvolvimento do raciocínio do aluno por meio da exposição de uma sequência de soluções de problemas práticos na forma de algoritmos e de programas em Português Estruturado.
  • Habilitar o estudante a enfrentar a formulação lógica de problemas com os quais terá de lidar em sua rotina profissional.
  • Dar ênfase à necessidade de clareza de raciocínio, de planejamento prévio e de exatidão na aplicação do método escolhido.

Objetivos Específicos / Habilidades

  • Usar variáveis, constantes, estruturas de controle (condicionais) e de repetição (loops) em algoritmos.

  • Manipular arrays (vetores e matrizes) e utilizar sub-rotinas (funções/métodos) para modularizar código.
  • Codificar e testar algoritmos em uma linguagem de programação específica, seguindo boas práticas de desenvolvimento.

Conteúdo Programático

  • Conceito de Algoritmo
  • Método para a construção de algoritmos
  • Tipos de Algoritmos
    • Descrição Narrativa
    • Fluxograma
    • Pseudocódigo ou portugol
  • Exemplos de Algoritmos
  • Instruções primitivas, variáveis e tipos de dados
    • Definir instruções primitivas
    • Definir os comandos de entrada e saída
    • Definir tipos de dados e tipos de variáveis
    • Utilizar variáveis
  • Expressões e operadores
    • Construir expressões
    • Operadores aritméticos, relacionais e lógicos
    • Estruturas de decisão se...então
  • Representação de Algoritmos e Estruturas de Decisão Aninhadas
    • Três representações de algoritmos
    • Aninhar estruturas de decisão compostas se...senãose...então
    • Estrutura de múltipla escolha
  • Exercícios com Estruturas de Decisão
    • Decisão simples
    • Decisão composta
    • Escolha
  • Repetição Enquanto
    • Estruturas sequenciais e não sequenciais
    • Sintaxe do comando enquanto (teste no início)
  • Repetição Para
    • Sintaxe do comando para com variável de controle
    • Definição do nome e passo de incremento/decremento
    • Quando usar para vs. enquanto
  • Estruturas Aninhadas: Enquanto e Para
  • Exercícios de Repetição: Para e Enquanto
  • Estruturas de Dados Homogêneas — Vetores
    • Conceito e sintaxe
    • Quando utilizar vetores
  • Estruturas de Dados Homogêneas — Matrizes
    • Conceito bidimensional
    • Construção de algoritmos com matrizes
  • Estruturas de Repetição — Exercícios
  • Funções, Procedimentos, Parâmetros e Bibliotecas
    • Conceito de subalgoritmos
    • Tipos de subalgoritmos e elementos
    • Sintaxe de funções
    • Criação de funções
  • Exercícios com Matrizes e Funções

Metodologia

Avaliação contínua, priorizando a verificação dos seguintes itens: participação nas atividades realizadas em sala de aula; execução dos trabalhos individuais; pontualidade na entrega dos trabalhos; provas, trabalhos, seminários, debates e pesquisas sobre o conteúdo programático e sobre conteúdos complementares.

Recursos

Bibliografia

Básica:

  • ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene Aparecida Veneruchi de. Fundamentos da Programação de Computadores. 3ª ed. São Paulo: Pearson Education do Brasil, 2013.
  • MENEZES, Nilo Ney Coutinho. Introdução à Programação com Python – 4ª Edição: Algoritmos e lógica de programação para iniciantes. Novatec Editora, 2024.
  • OLIVEIRA, Nelson I. de. Lógica de Programação. Natal: SEDIS-UFRN, 2019.

Complementar:

  • FORBELLONE, André Luiz Villar; EBERSPÄCHER, Henri Frederico. Lógica de Programação – A construção de algoritmos e estrutura de dados. 3ª ed. São Paulo: Prentice Hall, 2005.
  • SOUZA, Marco A. Furlan de; GOMES, Marcelo Marques; SOARES, Marcio Vieira; CONCILIO, Ricardo. Algoritmos e Lógica de Programação. 2ª ed. São Paulo: Cengage Learning, 2011.
  • XAVIER, Gley Fabiano Cardoso. Lógica de Programação. 12ª ed. São Paulo: Editora Senac, 2011.
  • MANZANO, José Augusto N. G. Lógica Estruturada para Programação Computadores. 1ª ed. São Paulo: Editora Érica, 2002.
  • LOPES, Anita; GARCIA, Guto. Introdução à Programação – 500 algoritmos resolvidos. 1ª ed. Rio de Janeiro: Editora Campos, 2002.
Atividades
(Em Construção) TEC.1697 - Atividade Avaliativa I

Atividade avaliativa referente aos conteúdos: - Conceitos iniciais de lógica de programação e algoritmos; - Instruções Primitivas, Variáveis e Tipos de Dados

Vídeos

Nenhum vídeo cadastrado.

Arquivos
Repositórios

Nenhum repositório cadastrado.