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 e Gamas de variação

– Operações e funções pré-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 multidimensionais

– 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, cotado para 14 valores, sendo necessária uma classificação mínima de 6 valores (em 14).
- 3 testes de desempenho individuais, totalizando 6 valores. Cada teste é cotado para 2 valores. O aluno tem de obter, no conjunto dos testes, pelo menos 2,5 valores (em 6).

Caso o professor entenda necessário, a nota final poderá ser validada por meio de uma prova adicional escrita ou oral.

Notas superiores a 17 devem ser defendidas em exame escrito ou oral. Caso o aluno não efetue essa defesa, a classificação final será limitada a 17 valores..

 

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

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

- Obter pelo menos 2,5 valores no conjunto dos testes de desempenho individuais.

 

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 )