Algoritmos e Programação › 18069

código no paco
18069
área(s) de educação/formação
Informática
componente
técnica
créditos ects
6
escolaridade
ensino teórico-prático (TP) - 1 hora/semana
ensino prático e laboratorial (PL) - 3 horas/semana
idioma(s) de lecionação
Português, Inglês
objectivos

A disciplina pretende iniciar a introdução à algoritmia através da analise de problemas relacionados com o desenvolvimento de software. Esta iniciação foca-se numa vertente especialmente prática com problemas de software dos quais se espera que os alunos sejam capazes de analisar e desenvolver soluções individualmente e em grupo. Para tal, a disciplina introduz os fundamentos gerais da programação auxiliados por uma linguagem exemplo.

competências

• Demonstrar capacidade analítica para conceber, desenvolver e adaptar algoritmos
• Conceber soluções lógicas para problemas surgidos no âmbito da informática
• Conceber software, individualmente ou integrados em equipas
• Solucionar problemas computacionais básicos que lhe sejam apresentados
• Conceber soluções em forma de algoritmo
• Relacionar o algoritmo com linguagens de programação

conteúdos

1. Noção de algoritmo
2. Estratégias algorítmicas (divisão-­-e-­-conquista, programação dinâmica, etc.)
3. Formas de representação de algoritmos (pseudo-­-linguagem, fluxograma, linguagem natural)
4. Tipos de dados e variáveis
5. Estruturas de dados
6. Estruturas de decisão
7. Estruturas de repetição
8. Tipos de dados compostos
9. Vetores e Matrizes
10. Algoritmos de ordenação e pesquisa
11. Pilhas, Filas e Listas
12. Grafos
13. Funções
14. Iteratividade
15. Recursividade
16. Acesso a ficheiros

avaliação
Avaliação discreta:
  • 15.00% TP (Teste programatico)
  • 35.00% TP (Teste programatico)
  • 50.00% P (Projecto de grupo prático)
Avaliação Final:
  • 50.00% TP (Prova escrita)
  • 50.00% P (Projecto de grupo prático)
requisitos

Conhecimentos básicos em TIC

Matemática A ou B.

metodologia

A metodologia associada à disciplina foca-se em especial na introdução progressiva da algoritmia e fundamentos da programação. Do mesmo modo, todas as noções apresentadas são reforçadas na vertente prática através da sucessiva realização de exercicios que requerem uma análise dos problemas e consequente desenvolvimento de uma solução de software.

De forma a auxiliar a aprendizagem relativa aos fundamentos da programação, é ensinada uma linguagem de programação, o Python, que permite aos alunos implementarem soluções de software reais.

Por fim, como forma de ligação entre as diferentes vertentes da disciplina, um trabalho prático em grupo é conduzido ao longo do semestre numa perspectiva de aprendizagem continua e com acompanhamento por parte do docente.

bibliografia recomendada

• Allen B. Downey, Jeffrey Elkner, Chris Meyers , "Howto think like a Computer Scientist: LearningWithPython", GreenTeaPress, 2002
• Algorithms, Robert Sedgewick and Kevin Wayne, fourth edition, Addison Wesley, 2011.
• Analysis of Algorithms, Jeffrey J. McConnell, second edition, Jones and Bertlett Publishers, 2008.
• The Algorithm Design Manual, Steven S. Skiena, second edition, Springer, 2008.
• Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein, third edition, The MIT press, 2009.
• Parrete William A., "UNIX for application developers", McGraw-­-Hill, 1991
• Wilson, Ed, "Windows Powershell 3.0 Step By Step", Microsoft Press, 2013

Este sítio web utiliza cookies sem recolher informação pessoal que permita a identificação dos utilizadores. Ao navegar neste sítio está a consentir a sua utilização.saber mais
Para que esta página funcione corretamente deve ativar a execução de Javascript. Se tal não for possível, algumas funcionalidades poderão estar limitadas.