Algoritmos e Programação

Conhecimentos de Base Recomendados

n. a.

Métodos de Ensino

Aulas Teóricas com apresentação, pelo docente, dos conceitos e suas aplicações, sempre acompanhada de exemplos.
Aulas Laboratoriais com resolução de problemas, que incluem a discussão, a análise e desenvolvimento do respetivo algoritmo e sua implementação na linguagem C. Todas as fases são acompanhadas pelo docente.

Resultados de Aprendizagem

Pretende-se estimular os alunos à resolução de problemas através do desenvolvimento dos respetivos algoritmos.

Pretende-se ensinar aos alunos como desenvolver um programa de forma estruturada. Dotar os alunos dos conceitos básicos da linguagem C, que lhes possibilitem o desenvolvimento de pequenas aplicações.

Programa

Fases de Desenvolvimento de uma Aplicação

Algoritmia e Modelação de Problemas

Principais Paradigmas de Programação

Introdução à Linguagem C

 -Estrutura de um programa em C

 -Declaração de variáveis e constantes

 -Palavras reservadas

 -Identificadores – regras e convenções

 -Tipos de dados pré-definidos

 -Gamas de variação

 -Operações e funções definidas

 -Modificadores de tipo

Expressões

 -Operador de atribuição

 -Operadores relacionais

 -Operadores lógicos

 -Operadores de incremento e decremento

 -Operadores de manipulação de bits

 -Operador sizeof

 -Operador de conversão de tipos

Interação com o Utilizador

 -Leitura e escrita formatada

 -Especificadores de Formato

Estruturas de Controlo

 -Instrução composta

 -Sequência

 -Seleção: Instrução if, Cláusula else, Encadeamento de instruções if, Instrução switch

 -Repetição: Instrução while, Instrução do-while, Instrução for, Encadeamento de instruções de repetição, Instruções break e continue

Funções

-Objetivos

-Definição de funções: cabeçalho e corpo

-Declaração de funções

-Alcance das variáveis

-Efeitos laterais

-Comunicação entre funções: retorno, argumentos e parâmetros

-Passagem de argumentos de tipos de dados pré-definidos

Vetores

-Objetivos

-Declaração e Inicialização

-Vetores Multi-Dimensionais

-Manipulação de Vetores

Strings

-Declaração e Inicialização

-Leitura e escrita de Strings

-Manipulação de Strings

-Funções Definidas para Strings

-Conversão entre Tipos Numéricos e Strings

Docente(s) responsável(eis)

Verónica Maria Marques do Carreiro Silva Vasconcelos

Métodos de Avaliação

Avaliação:

- Exame final escrito para 15 valores, com o mínimo de 6 valores (em 15 valores).
- 2 testes de desempenho individuais para um total de 5 valores. O aluno tem de obter o mínimo de 2 valores (em 5 valores).  

Notas superiores a 17 devem ser defendidas em exame oral. Caso o aluno não efetue essa defesa a nota será limitada a 17 valores.
Caso o professor entenda necessário, a nota final será validada por um exame oral.

 

Condições de Acesso a Exame, válidas para todas as épocas de exame:

 - Não ter mais que duas faltas nas aulas laboratoriais.

- Obter  o mínimo de 2 valores nos testes.

- Estas condições aplicam-se a todas as épocas de exame.

 

A avaliação dos alunos abrangidos por regimes especiais será realizada em conformidade com a legislação em vigor.


    Estágio(s)

    NAO

    Bibliografia

    Vasconcelos, V.,  Marques, L, (2012). Linguagem C – Textos de apoio., ISEC (disponível na secção de texto e site da Unidade Curricular)

     King, K. N. (2008). C Programming – A Modern Approach”, Norton & Company, 2nd Ed. (disponível no ISEC: 1A -1-374)

     Damas, L. (1999). Linguagem C. FCA – Editora de Informática. (disponível no ISEC: 1A -1- 458)

    Kochan, S. G. (2005). Programming in C. 3rd Ed. (disponível no ISEC: 1A-1- 165)

     Guerreiro P. (2006). Elementos de Programação com C. FCA – Editora de Informática, 3ª Ed (disponível no ISEC: 1A -1- 458)

     S., Herbert. (1998).  Teach Yourself C.  McGraw-Hill, 3rd Ed. (disponível no ISEC: 1A – 1 – 257 )