Programação aplicada à Engenharia de Agrimensura

Python
Básico
CEAC
A disciplina ofertada para alunos de Engenharia Cartográfica e de Agrimensura no semestre letivo de 2025.1.
Published

January 3, 2025

OBJETIVOS

  1. Sistematizar e organizar o raciocínio na resolução de problemas de forma algorítmica;
  2. Conhecer as principais formas de representação de um algoritmo, independente de uma linguagem de programação em particular;
  3. Iniciar o desenvolvimento de programas corretos, eficientes, estruturados, bem documentados e consistentes (robustos);
  4. Dominar o conceito de funções, funções recursivas, variáveis locais e globais, passagem de parâmetros, ponteiros e passagem de parâmetros por endereço;
  5. Conhecer a sintaxe e a semântica de uma linguagem de programação estruturada – C;
  6. Desenvolver programas de pequeno e médio porte, usando variáveis simples e estruturadas (arrays multidimensionais, struct e file), associados às diferentes classes de problemas numéricos e não-numéricos, fundamentais no exercício cotidiano da prática de programação;
  7. Trabalhar com algoritmos básicos associados a problemas de ordenação e de busca, além de alguns problemas geométricos;
  8. Estar apto a iniciar o aprendizado de estruturas de dados dinâmicas e técnicas de programação mais avançadas.

EMENTA

Conceitos básicos de computadores. Linguagem de programação. Aplicação de computadores digitais. Técnica e programação estruturada. Linguagem de programação. Conceito de sub-programação. Tópicos em sistemas operacionais. Simulação e otimização. Operações com vetores, matrizes, funções trigonométricas. Manuseio de imagens. Noções de CAD e georreferenciamento.

CONTEÚDO PROGRAMÁTICO

Estrutura Computacional: hardware e software. Linguagem de Programação de Alto Nível: aspectos históricos, conceitos e características básicas; compiladores existentes em diferentes plataformas; estrutura geral de um programa (linguagem adotada); operadores (atribuição, booleanos, aritméticos, relacionais, outros); precedência entre operadores; expressões aritméticas e booleanas; variáveis simples (identificadores e tipos de dados primitivos; resolução de problemas); comandos de entrada e saída; estruturas de controle de fluxo de execução de programas (comandos de atribuição, seleção e repetição); estruturas de dados homogêneas (arranjos multidimensionais; declaração, inicialização e representação interna; acesso a elementos de forma indexada; geração de números pseudo-aleatórios; resolução de problemas envolvendo arranjos multidimensionais; estudos de casos unidimensionais – problemas de ordenação e de busca; manipulação matricial); estruturas de dados heterogêneas (estruturas – declaração, inicialização e representação interna, acesso a componentes; estruturas aninhadas; arranjos de estruturas; uniões e tipos enumeráveis; arquivos – relevância; conceitos básicos, arquivos do tipo texto e binário; funções de manipulação de arquivos; manipulação de arquivos texto e de arquivos binários); modularidade (filosofia, conceitos básicos, passagem de parâmetros e valores de retorno, variáveis locais e globais); recursividade (princípio de indução finita; definição e exemplos; elaboração de funções recursivas simples; estrutura de pilha subjacente às chamadas recursivas; vantagens e desvantagens do uso da recursão).

REFERÊNCIAS

  1. ASCENCIO, A. F. G.; CAMPOS, E. A. V. C. Fundamentos da programação de computadores: algoritmos, pascal e C/C++. Pearson Prentice Hall, 2003. 355p.
  2. KERNINGHAN, B. W.; Pike, R. A Prática de Programação. Rio de Janeiro: Editora Campus, 2000. 280p.
  3. HOLLOWAY, J. P. Introdução a Programação para Engenharia: resolvendo problemas com algoritmos. LTC Editora, 2006. 339p.
  4. LOPES, A.; GARCIA, G. Introdução à Programação: 500 exercícios resolvidos. Rio de Janeiro: Editora Campus, 2002. 469p.
  5. MEDINA, M.; FERTIG, C. Algoritmos e programação: teoria e prática. São Paulo: Novatec Editora, 2005. 384p.
  6. OLIVEIRA, U. Programando em C, vol. I – fundamentos. Editora Ciência Moderna, 2008. 743p.

BIBLIOGRAFIA COMPLEMENTAR

  1. MANZANO, Jose Augusto N. G.; OLIVEIRA, Jayr Figueredo de. Algoritmos: lógica para o desenvolvimento de programação. 13. ed. São Paulo: Érica, 2002.
  2. NORTON, Peter. Introdução à informática. São Paulo: Makron Books do Brasil, 1997.
  3. FORBELLONE, A.L.V.; EBERSPÄCHER, H.F. Lógica de programação: a construção de algoritmos e estruturas de dados. São Paulo: Makron Books, 1993.