Conhecimentos de Base Recomendados
Conhecimento Lógico-Matemático e Língua Inglesa para a leitura da bibliografia e documentação de suporte online.
Métodos de Ensino
- Aulas teóricas (2 hora/semana).
As aulas teóricas são tendencialmente expositivas, mas promovem a participação ativa dos alunos, através da colocação de questões durante a discussão dos temas tratados e lançamento de desafios para os alunos submeterem a sua resolução pela plataforma académica online. A partir do segundo tópico da componente teórica do programa, os alunos passam a utilizar o computador também durante as aulas teóricas de modo a permitir uma maior experimentação e acompanhamento da aprendizagem de todos os conceitos abordados.
- Aulas práticas (2 horas/semana).
Nas aulas práticas são aplicados os conhecimentos adquiridos nas aulas teóricas mediante a resolução de fichas de trabalho. As aulas práticas estarão sincronizadas de modo que os alunos apliquem na prática laboratorial os conceitos previamente aprendidos numa aula teórica.
Todos os alunos têm de assistir a, no mínimo, 2/3 das aulas práticas para poderem ter acesso ao exame normal e de recurso. Os alunos com estatuto de trabalhador-estudante ou com algum outro estatuto especial previsto em lei, sendo este confirmado a partir da informação fornecida pelos Serviços Académicos, não existe mínimo de assiduidade. Os alunos que tenham acesso à época especial, ficam dispensados desta assiduidade mínima.
Aconselha-se aos alunos a acompanharem sistematicamente as aulas teóricas, como condição indispensável ao aproveitamento escolar e à correta compreensão da matéria. Nas aulas práticas não é suposto substituir-se o que foi leccionado na aula teórca, ou seja, a introdução dos conceitos previamente apresentados.
Resultados de Aprendizagem
Objetivos:
- Introduzir conceitos base de tecnologias de informação.
- Introduzir os conceitos de programação para ser possível a implementação de procedimentos autónomos para a resolução de problemas simples de engenharia.
- Transmitir os conhecimentos necessários para a eficiente utilização de aplicações de produtividade utilizadas no contexto das engenharias, nomeadamente processamento de folhas de cálculo.
Competências Gerais:
- Aplicação do conhecimento.
- Adquirir conceitos de programação e tornar-se um utilizador eficiente das principais ferramentas de trabalho no dia-a-dia de um Engenheiro Industrial.
Competências Específicas:
- Autoaprendizagem na prática da programação para a realização de exercícios das fichas práticas e desafios de programação.
- No caso específico de macros e as aplicações de processamento de folhas de cálculo, utilizá-las de forma avançada a fim de resolver problemas de engenharia.
Programa
Componente Teórica
1. Introdução:
Algoritmos. Etapas na resolução computacional de um problema. Construção de algoritmos em pseudocódigo. Conceitos elementares. Constantes, variáveis, operadores e expressões aritméticas. Arrays. Entrada e Saída de dados. Modularização. Tipos de Procedimentos. Argumentos. Estruturas de Decisão e Repetição. Teste de Algoritmos. Computadores: arquitetura e funcionamento. Linguagens: da máquina ao utilizador, diferentes paradigmas.
2. Programação em Visual Basic para Aplicações (VBA):
Ambiente de Desenvolvimento. Conceitos de programação abordados genericamente no tópico anterior aplicados nesta linguagem de programação. Variáveis, operadores e expressões aritméticas. Arrays. Caixas de Mensagem. Caixas de Entrada de Dados. Modularização e Macros. . Sub-rotinas vs. Funções. Argumentos. Passagem por Referência e por Valor. Testes e Ciclos. Funções de biblioteca (Texto, Conversões, Data/Hora, Validação, Formatação). Tratamento de Erros. Objetos do Excel: Hierarquia e Coleções. Propriedades, Métodos e Eventos. Seleção de Objetos. Percorrer uma coleção de objetos.
3. Programação em Python:
Ambiente de Desenvolvimento. Estrutura de um programa. Conceitos de programação abordados genericamente no tópico 1 aplicados nesta linguagem de programação. Arrays. Entrada e Saída de Dados. Modularização. Testes e Ciclos. Integração do Python no Excel. User Defined Function (UDF).
Componente Prática
1. MS Excel Avançado:
Ambiente MS Excel. Livros, folhas de cálculo e células. Fórmulas e funções. Referências relativas e absolutas. Gestão de nomes. Gráficos e tabelas. Formatação condicional. Ordenação e filtragem de dados. Validação e proteção de dados. Importação de dados.
2. Programação em VBA:
Gravação e programação de macros de comando. Programação de macros de função. Estruturas de decisão e repetição. Programação de sub-rotinas. Objetos do Excel. Utilização de funções de biblioteca.
3. Programação em Python:
Preparação do Ambiente de Desenvolvimento. Desenvolvimento e Execução de Programas em Python. Entrada e Saída de Dados. Integração do Python no Excel. Manipulação de objetos do Excel no Python. User Defined Functions (UDF)
Docente(s) responsável(eis)
Estágio(s)
NAO
Bibliografia
Recomendada:
- Liluyoud Cury de Lacerda, José Marcio Benite Ramos, Sara Luize Oliveira Duarte. Lógica de programação. Ed. UFMT. Disponível online.
- Almeida, Paula de Fátima Peres Teixeira. Excel: macros e aplicações. 3ª edição. Edições Sílabo. ISBN 978-989-561-163-8 [Cota 1A-3-262]
- Costa, Ernesto. Programação em Python : fundamentos e resolução de problemas. FCA Editora. ISBN 978-972-722-816-4 [Cota 1A-1-457 ]
- Apontamentos e material disponibilizados pelos docentes na plataforma académica online.
Complementar:
- Carvalho, Adelaide. Exercícios resolvidos com Excel para economia & gestão. FCA Editora. ISBN 972-722-472-5
- Alexander, Michael & Kusleika, Dick. Excel 2019 Power Programming with VBA. Wiley. ISBN 978-111-951-492-3
- Carvalho, Adelaide. Automatização em Excel: 69 exercícios. FCA Editora. ISBN 978-972-722-872-0
- Almeida, Paula de Fátima Peres Teixeira. Excel avançado. 4ª edição. Edições Sílabo. ISBN [Cota 1A-3-260]
- Zumstein, Felix. Python for Excel–The Book, A Modern Environment for Automation and Data Analysis. O’Reilly Media. 978-149-208-100-5