Código: | CC1003 | Sigla: | CC1003 | Nível: | 100 |
Áreas Científicas | |
---|---|
Classificação | Área Científica |
OFICIAL | Ciência de Computadores |
Ativa? | Sim |
Página Web: | http://piazza.com/up.pt/fall2020/cc1003 |
Unidade Responsável: | Departamento de Ciência de Computadores |
Curso/CE Responsável: | Licenciatura em Ciência de Computadores |
Sigla | Nº de Estudantes | Plano de Estudos | Anos Curriculares | Créditos UCN | Créditos ECTS | Horas de Contacto | Horas Totais |
---|---|---|---|---|---|---|---|
L:B | 1 | Plano de Estudos Oficial | 3 | - | 6 | 56 | 162 |
L:CC | 94 | Plano de estudos a partir de 2014 | 1 | - | 6 | 56 | 162 |
L:F | 1 | Plano de Estudos Oficial | 3 | - | 6 | 56 | 162 |
L:G | 1 | Plano estudos a partir do ano letivo 2017/18 | 2 | - | 6 | 56 | 162 |
3 | |||||||
L:M | 0 | Plano de Estudos Oficial | 2 | - | 6 | 56 | 162 |
3 | |||||||
L:Q | 0 | Plano estudos a partir do ano letivo 2016/17 | 3 | - | 6 | 56 | 162 |
MI:ERS | 136 | Plano Oficial desde ano letivo 2014 | 1 | - | 6 | 56 | 162 |
Introduzir os conceitos elementares de programação imperativa enfatizando a noção de algoritmo e de modularidade.
Pretende-se que os estudantes:
- sejam capazes de conceber algoritmos para resolução de problemas simples e de os implementar na linguagem de programação C
- fiquem a conhecer alguns algoritmos básicos (contagem, pesquisa, ordenação, ...)
- adquiram bons hábitos de programação.
Pretende-se que os estudantes:
- conheçam a semântica de constituintes fundamentais da linguagem C;
- sejam capazes de simular passo a passo a execução de pequenos programas;
- sejam capazes de escrever, testar e executar programas para para resolução de problemas simples a partir de uma especifição informal;
- conhecer alguns algoritmos básicos (computação numérica, contagem, pesquisa, ordenação);
- adquiram competências básicas de programação estruturada.
Introdução à linguagem C. Breve contextualização histórica. Características da linguagem. Vantagens e desvantagens da linguagem. Perigos e cuidados na sua utilização.
Fundamentos de linguagem C. Estrutura sintática de programas. Diretivas, declarações, expressões. Compilação e execução.
Tipos básicos (inteiros, virgula flutuante, carateres). Controlo de fluxo. Ciclos. Definição de funções. Entrada e saida formatada.
Algoritmos numéricos e semi-numéricos elementares (e.g. algoritmo de Euclides para o mdc, cálculo de potências, bisseções sucessivas para resolução de equações).
Variáveis indexadas. Algortimos fundamentas: contagem, pesquisa e ordenação. Cadeias de carateres.
Organização de programas: ficheiros "header" e bibliotecas padrão.
Deteção e correção de erros. Utilização de um "debugger" e uso de asserções.
Introdução ao programação com apontadores. Utilização de apontadores para processar cadeias e variáveis indexadas.
Recursividade. Resolução de problemas simples usando algoritmos iterativos e recursivos.
Definição de novos tipos de dados (estruturas).
Aulas teóricas: exposição oral de conceitos suportada por apresentação de "slides"; resolução interativa de exemplos de programação ilustrativos e exercícios complementares.
Aulas laboratoriais: resolução de problemas em computador; utlização de ferramentas de desenvolvimento (editor, debugger, sistema de testes automático) como auxiliar para a deteção e correção de erros em exercícios selecionados.
Utilização de sistemas de avaliação automática (Mooshak e Codex).
https://mooshak.dcc.fc.up.pt/~pi/
https://codex.dcc.fc.up.pt/cc1003/
Designação | Peso (%) |
---|---|
Exame | 80,00 |
Teste | 20,00 |
Total: | 100,00 |
Designação | Tempo (Horas) |
---|---|
Frequência das aulas | 56,00 |
Estudo autónomo | 56,00 |
Trabalho laboratorial | 50,00 |
Total: | 162,00 |
Não aplicável em 2020/21.
A avaliação tem em conta as seguintes provas:
T1: classificação do primeiro teste durante o semestre
T2: classificação do segundo teste realizado durante a época de exames
F: classificação final
A nota final é F = T1*0.20 + T2*0.80
Os exames de recurso, melhoria de nota e de épocas especiais são cotados para 100% da classificação.
Os estudantes podem melhorar a nota do exame final de acordo com os regulamentos gerais.