Saltar para:
Logótipo
Você está em: Início > CC1024
Mapa das Instalações
FC6 - Departamento de Ciência de Computadores FC5 - Edifício Central FC4 - Departamento de Biologia FC3 - Departamento de Física e Astronomia e Departamento GAOT FC2 - Departamento de Química e Bioquímica FC1 - Departamento de Matemática

Introdução à Programação

Código: CC1024     Sigla: CC1024     Nível: 100

Áreas Científicas
Classificação Área Científica
OFICIAL Ciência de Computadores

Ocorrência: 2023/2024 - 1S Ícone do Moodle

Ativa? Sim
Unidade Responsável: Departamento de Ciência de Computadores
Curso/CE Responsável: Licenciatura em Ciência de Computadores

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
L:B 2 Plano de Estudos Oficial 3 - 6 48 162
L:CC 113 Plano estudos a partir do ano letivo 2021/22 1 - 6 48 162
L:F 1 Plano de Estudos Oficial 3 - 6 48 162
L:G 0 Plano estudos a partir do ano letivo 2017/18 2 - 6 48 162
3
L:IACD 115 Plano Oficial a partir do ano letivo 2021/22 1 - 6 48 162
L:M 0 Plano de Estudos Oficial 2 - 6 48 162
3
L:Q 1 Plano estudos a partir do ano letivo 2016/17 3 - 6 48 162
Mais informaçõesA ficha foi alterada no dia 2023-12-06.

Campos alterados: Componentes de Avaliação e Ocupação, Fórmula de cálculo da classificação final

Língua de trabalho

Português

Objetivos

Introdução à utilização de computadores com sistema operativo GNU/Linux.

Introdução à programação de computadores usando a linguagem Python.

Noção de linguagens de baixo nivel e alto nível; interpretadores e compiladores; editores e ambientes de desenvolvimento. Valores, tipos e expressões. Funções e procedimentos. Condições e seleção. Iteração e recursão. Estruturas de dados e algoritmos fundamentais: processamento de sequências, texto, computação numérica.

 

Resultados de aprendizagem e competências

No final do curso, os estudantes devem ser capazes de:

1. simular a execução passo-a-passo de programas simples;

2. escrever programas para resolver problemas simples (exemplos: cálculo numérico, processamento de texto);

3. decompor problemas em sub-tarefas passíveis de implementação como sub-programas re-utilizáveis;

4. testar e corrigir erros em programas.

5. conhecer algoritmos elementares de processamendo de sequências, texto e programação numérica.

Modo de trabalho

Presencial

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

N/A

Programa

1. Breve introdução histórica aos computadores e linguagens de programação.
2. Introdução à linguagem Python: variáveis, expressões, instruções.
3. Utilização interativa do Python e definição de "scripts"; definição de funções simples. 
4. Condições e valores lógicos; instruções de execução condicional.
5. Ciclos e Iteração.
6. Números pseudo-aleatórios; exemplos com simulação.
7. Resolução numérica de equações; implementação algoritmos elementares.
8. Processamendo de variáveis indexadas (listas) e de texto (cadeias).
9. Escrita e leitura de ficheiros de dados; traçado de gráficos com ferramentas externas (e.g. gnuplot).
10. Recursão.
11. Definição de novos tipos de dados. Breve introdução à programação com objetos.

Bibliografia Obrigatória

Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers; How to Think Like a Computer Scientist, n/a, 2012. ISBN: n/a ((disponível na Internet em http://openbookproject.net/thinkcs/python/english3e))
Brad Miller and David Ranum; Learning with Python: Interactive Edition (Disponível na Internet em: http://thinkcspy.appspot.com/)

Bibliografia Complementar

Allen B. Downey; Think Python (Disponível na Internet em: http://www.greenteapress.com/thinkpython/thinkpython.html)
H. M. Deitel, P. J. Deitel, J. P. Liperi, B. A. Wiedermann;; Python: How to Program ((Recomendado para estudo de tópicos mais avançados).)

Métodos de ensino e atividades de aprendizagem

Exposição teórica, com análise e discussão de problemas e programas.
Aulas práticas para resolução de exercícios em laboratório, com utilização de ferramentas de avaliação automática para programas. 

Software

Codex (https://codex.dcc.fc.up.pt)
Python 3 (https://www.python.org)
Mooshak (https://mooshak.dcc.fc.up.pt)
Python tutor (https://pythontutor.com)

Tipo de avaliação

Avaliação distribuída com exame final

Componentes de Avaliação

Designação Peso (%)
Exame 82,50
Teste 17,50
Total: 100,00

Componentes de Ocupação

Designação Tempo (Horas)
Frequência das aulas 48,00
Trabalho laboratorial 54,00
Estudo autónomo 60,00
Total: 162,00

Obtenção de frequência

Frequência obrigatória às aulas práticas (conforme o Regulamento de Avaliação do Aproveitamento dos Estudantes, FCUP).

Perde a frequência o estudante que faltar a mais do que 3 aulas práticas.

A perda de frequência implica a impossibilidade de realizar exames da unidade curricular em 2023/24.

Fórmula de cálculo da classificação final


  • Época normal:    0.825 E  + 0.175 T



  • Época de Recurso:

          Maximo(E, 0.825 E  + 0.175 T)


sendo:
 E (16.5/20) : Exame final  (época normal ou de recurso).
 T (3.5/20): Teste escrito intermédio (durante o semestre).

Na época de recurso, o exame final pode ter peso 100%.

Avaliação especial (TE, DA, ...)

Os critérios de avaliação aplicam-se a todos os estudantes.

Melhoria de classificação

Por exame final.

Observações

Júri:
Ana Paula Tomás
Pedro Gabriel Ferreira
Eduardo Marques
Francesco Renna
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © Faculdade de Ciências da Universidade do Porto  I Termos e Condições  I Acessibilidade  I Índice A-Z  I Livro de Visitas
Página gerada em: 2024-09-01 às 12:05:08 | Política de Utilização Aceitável | Política de Proteção de Dados Pessoais | Denúncias