Departamento de Informática e Estatística

Planos de Ensino
Visitante (Entrar)

Plano de Ensino

Aprovado pelo Departamento em: 8-8-2024

  1. Identificação: Visualizar em PDF
    • Disciplina: INE5201 - Introdução à Ciência da Computação
    • Turma(s): 02202A, 02235, 07236
    • Carga horária: 54 horas-aula      Teóricas: 27      Práticas: 27
    • Período: 2º semestre de 2024
  2. Curso(s):
    • Engenharia Eletrônica (235)
    • Engenharia, área Eletricidade, habilitação Engenharia Elétrica (202)
    • Engenharia, área Mecânica, habilitação Engenharia de Materiais (236)
  3. Requisito(s):
    • Engenharia, área Mecânica, habilitação Engenharia de Materiais (236)
      • MTM3101 - Cálculo 1
      • MTM3110 - Cálculo 1
  4. Professor(es):
    • Wyllian Bezerra da Silva (wyllian.bs@ufsc.br)
  5. 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.
  6. 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:
      1. Analisar detalhadamente problemas dividindo em entradas, processamento e saídas;
      2. Elaborar algoritmos em uma pseudo-linguagem de programação para resolução dos problemas;
      3. Implementar estes algoritmos em uma linguagem de programação.
  7. 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]
  8. Metodologia:

    Os conteúdos programáticos serão trabalhados com aulas expositivas e teóricas, resoluções de exercícios e problemas, bem como práticas de programação.

    A natureza desta 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 de implementação (exercícios, trabalhos e avaliações) serão realizadas por meio de algum dispositivo computacional na linguagem de programação adotada na disciplina. Em especial, destaca-se que as avaliações serão aplicadas sob a forma de VPL (Virtual Programming Lab - https://vpl.dis.ulpgc.es) no Quiosque de Provas (https://ine.ufsc.br/quiosque-de-provas). Logo, o(a) discente necessitará de um dispositivo computacional portátil (e.g., laptop, notebook, ultrabook etc.) para a realização das avaliações nesse ambiente. Caso não tenha, serão fornecidas versões impressas, as quais serão transcritas ipsis litteris (literalmente) para os VPLs contidos nas avaliações.

    Em caso de dúvidas sobre o conteúdo da disciplina, o(a) discente poderá recorrer ao atendimento disponibilizado pelo docente, cujo horário está agendado no Moodle. Comunicação e informações gerais, ensalamento ou troca de sala/laboratório, exercícios, tarefas, material de apoio, slides, documentos etc. serão disponibilizados no Moodle da disciplina.

  9. 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 (A), envolvendo questionários (Q), implementações de código (I) e simulados (S1 e S2), utilizando os conceitos previamente estudados, as quais envolvem solução de problemas sob a forma de algoritmos e implementação em uma linguagem de programação. Serão realizadas duas (2) avaliações, P1 e P2. A média final (MF) será calculada conforme expressão

    MF = 0,3*A + 0,3*P1 + 0,4*P2,
    em que A = (0,1*Q/q + 0,4*I/i + 0,2*S1 + 0,3*S2)/4, com q e i representando as quantidades de Q e I, respectivamente.

    A nota mínima para aprovação na disciplina será MF >= 6,0 (seis) e Frequência Suficiente (FS), conforme Art. 69 e 72 da Resolução nº 17/CUn/1997. Discentes com frequência insuficiente estarão reprovados com MF e nota final (NF) iguais a zero, i.e., MF = NF = 0. A avaliação de recuperação (REC), quando aplicada, será composta por uma única avaliação, envolvendo todo o conteúdo da disciplina. O arredondamento da UFSC será aplicado sobre os itens de nota A, P1, P2, MF, REC (se houver) e NF.

    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.

  10. 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 15ª e 16ª semana.

    As atividades de programação serão aplicadas ao longo do semestre. Se a solicitação de aplicação de segunda chamada (2C) for deferida, será agendada até o final do semestre. Caso seja aplicada uma avaliação de recuperação (REC), será realizada na última semana (17ª semana) do semestre.

  11. 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
  12. 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