- Identificação:
- Disciplina: INE5201 - Introdução à Ciência da Computação
- Turma(s): 01215, 01216, 02202A
- Carga horária: 54 horas-aula Teóricas: 27 Práticas: 27
- Período: 1º semestre de 2023
- Curso(s):
- Engenharia, área Eletricidade, habilitação Engenharia Elétrica (202)
- Engenharia, área Química, habilitação Engenharia de Alimentos (215)
- Engenharia, área Química, habilitação Engenharia Química (216)
- Requisito(s):
- Não há
- Professor(es):
- Wyllian Bezerra da Silva (wyllian.bs@ufsc.br)
- Bobiquins Estêvão de Mello (estevao.mello@ufsc.br)
- Ementa:
- Noções de sistemas de computação. Formulação de algoritmos e sua representação. Noções sobre linguagem de programação e programas. Implementação prática de algoritmos em uma linguagem de programação. Descrição de algumas aplicações típicas. Métodos computacionais na área científica e tecnológica.
- Objetivo(s):
- Geral: Analisar problemas e elaborar algoritmos para sua solução de forma clara e precisa usando programação estruturada e implementá-los em uma linguagem de programação. Analisar problemas e elaborar algoritmos para sua solução de forma clara e precisa usando programação estruturada e implementá-los em uma linguagem de programação.
- Específicos:
- Analisar detalhadamente problemas dividindo em entradas, processamento e saídas;
- Elaborar algoritmos em uma pseudo-linguagem de programação para resolução dos problemas;
- Implementar estes algoritmos em uma linguagem de programação.
- Conteúdo Programático:
- O COMPUTADOR [3 horas-aula]
- Arquitetura de Computadores
- Linguagens de Programação
- Programa Conversores
- LÓGICA DE PROGRAMAÇÃO - ALGORITMOS [9 horas-aula]
- Conceito de Algoritmo
- Pseudo-Código para Representar Algoritmos
- Conceito de variável e de atribuição de valor
- Estruturas de seleção
- Estruturas de repetição
- CARACTERÍSTICAS BÁSICAS DA LINGUAGEM DE PROGRAMAÇÃO [6 horas-aula]
- Estrutura de um Programa
- Declaração de Variáveis
- Comandos de Entrada/Saída: Teclado/Vídeo
- Comandos de Atribuição
- Compilação/Execução de Programas
- PROGRAMAÇÃO ENVOLVENDO ESTRUTURAS DE SELEÇÃO E REPETIÇÃO [12 horas-aula]
- Estruturas de Seleção
- Estruturas de Repetição
- PROGRAMAÇÃO ENVOLVENDO VARIÁVEIS INDEXADAS [12 horas-aula]
- Unidimensionais (vetores)
- Multidimensionais (Matrizes)
- SUBPROGRAMAÇÃO [12 horas-aula]
- O COMPUTADOR [3 horas-aula]
- Metodologia:
Os conteúdos programáticos serão trabalhados com aulas expositivas/teóricas, resoluções de exercícios/problemas, bem como aulas práticas de programação.
A natureza dessa disciplina exige dedicação extraclasse. O(A) discente deve manter uma rotina constante de estudos teóricos e treinamento prático para que possa cumprir com todas as atividades propostas. As atividades práticas deverão ser realizadas com auxílio de computador com a linguagem de programação adotada na disciplina.
Em caso de dúvidas sobre o conteúdo da disciplina, o(a)s discentes poderão recorrer ao atendimento disponibilizado pelo docente, cujos dias e horários estão agendados no Moodle. Comunicação/informações, exercícios, tarefas, material de apoio, slides, documentos e exemplos de códigos serão disponibilizados no Moodle da disciplina. - Avaliação:
A verificação do rendimento escolar compreenderá frequência e aproveitamento de estudos, os quais deverão ser atingidos conjuntamente. Será obrigatória a frequência às atividades maior ou igual a 75% (Frequência Suficiente - FS), estando reprovado o(a) discente com frequência menor do que 75% (Frequência Insuficiente - FI). Estão previstas atividades de programação envolvendo resolução de exercícios, utilizando os conceitos previamente estudados, as quais envolvem solução de problemas sob a forma de algoritmos ou implementação em uma linguagem de programação. Estas atividades serão aplicadas ao longo do semestre, compondo uma média aritmética simples (A), cujo peso será de 0,3. Serão realizadas duas (2) avaliações, P1 e P2, cujos pesos serão iguais a 0,3 e 0,4, respectivamente. A média final (MF) será calculada conforme expressão a seguir.
Conforme parágrafo 2º do artigo 70 da Resolução 17/CUn/97, o aluno com frequência suficiente (FS) e média final no período (MF) entre 3,0 e 5,5 terá direito a uma nova avaliação ao final do semestre (REC), sendo a nota final (NF) calculada conforme parágrafo 3º do artigo 71 desta resolução, ou seja: NF = (MF + REC) / 2.
- Cronograma:
As avaliações estão previstas nos períodos a seguir, os quais estão sujeitos a alterações.
- Prova 1 (P1): entre a 8ª e 9ª semana.
- Prova 2 (P2): entre a 14ª e 15ª semana.
As atividades de programação serão aplicadas ao longo do semestre.
A avaliação de segunda chamada (2C) será agendada pelo docente até o final do semestre e a avaliação de recuperação (REC) será realizada no horário de aula na última semana do semestre. - Bibliografia Básica:
- FEOFILOFF, Paulo. Algoritmos em linguagem C. Rio de Janeiro: Elsevier, 2009. Nro na BU/UFSC: 681.31:519.688 F344a. Conteúdo do livro disponível no link: https://www.ime.usp.br/~pf/algoritmos/
- Tutorial de C++ do cplusplus.com, disponível em http://cplusplus.com/doc/tutorial/
- Aulas de Introdução à Computação em Python da USP, disponível em https://panda.ime.usp.br/aulasPython/static/aulasPython/index.html
- Bibliografia Complementar:
- Problemas da Olimpíada Brasileira de Informática, disponível em https://olimpiada.ic.unicamp.br/pratique/
- STROUSTRUP, Bjarne. A linguagem de programação C++. 3. ed. Porto Alegre: Bookman, 2000. Nro na BU/UFSC: 681.31.06 S925c
- MIZRAHI, Victorine Viviane. Treinamento em linguagem C++. 2.ed. São Paulo: Pearson Prentice Hall, 2006. Nro na BU/UFSC: 681.31.06C M685t