Departamento de Ciência da Computação - IME - USP

MAC0115 - Introdução à Computação para Ciências Exatas e Tecnologia

Instituto de Física (Diurno/Noturno) - Segundo Semestre de 2020

Informações atualizadas em 17/08/2020

 

Bem-vindo à MAC0115 Introdução à Computação para Ciências Exatas e Tecnologia.

A disciplina MAC0115 é de responsabilidade do Departamento de Ciência da Computação (DCC) do Instituto de Matemática e Estatística (IME) da Universidade de São Paulo (USP) e é obrigatória para o curso de bacharelado em física do Instituto de Física (IF). Esta disciplina é oferecida no segundo semestre de cada ano. Em 2020, MAC0115 terá a participação de 4 professores do DCC e cerca de 390 alunos.

A seguir está uma descrição de alguns dos ingredientes principais de MAC0115.


Página da disciplina

A página de MAC0115 pode ser acessada através do sistema e-Disciplinas. O endereço do sistema e-Disciplinas é https://edisciplinas.usp.br. A página de MAC0115 deverá ser consultada regularmente. Nela você encontra boa parte do material visto nas aulas, fóruns de discussão, informações e avisos indispensáveis para o acompanhamento de MAC0115.

 

Pré-requisitos

Esta disciplina não possui pré-requisitos. Em particular, não é esperado que você tenha qualquer experiência prévia em programação.

 

Objetivos

O objetivo principal de MAC0115 é desenvolver um raciocínio aplicado na formulação e resolução de problemas computacionais, ensinar como abordar e resolver problemas computacionais.

Em MAC0115 você aprenderá a escrever programas de computador. O ato de programar é uma ferramenta útil para trabalhar o raciocínio mencionado acima, bem como tornar mais concretos outros conceitos comuns em ciência da computação.

Ao longo dos anos, MAC0115 utilizou diversas linguagens de programação: Fortran, Pascal, C e Python. Em 2020, será utilizada a linguagem Python. O ensino de uma linguagem de programação é uma ferramenta didática e um bônus concreto de aprendizagem, subordinado ao objetivo principal.

Em geral, uma vez adquirida familiaridade com uma linguagem de programação, não é difícil utilizar outra. Muitas vezes, basta apenas ler o manual. Desta forma, gostaríamos que no futuro você não se lembrasse de MAC0115 como um "Curso de Python". Em MAC0115, de fato, você aprenderá um pouco de alguma linguagem (Python) e será cobrado pela aplicação apropriada dos conceitos vistos nas aulas (assim como seus colegas de anos anteriores aprenderam Fortran, Pascal, C ou Python). No entanto, o verdadeiro aprendizado será a familiaridade com os conceitos e princípios envolvidos em programar.

Ferramentas tais como funções nativas e módulos existentes no Python evitam que reinvetemos soluções disponíveis e façamos tarefas presumidamente desnecessárias. O domínio dessas ferramentas é fundamental para um programador efetivo. Apesar disso, esta disciplina utiliza um subconjunto bem limitado dos recursos de Python. Não por essas ferramentas não serem importantes, mas simplesmente porque elas não são o foco em uma disciplina cujo objetivo é devenvolver um raciocínio aplicado na formulação e resolução de problemas computacionais .

O andamento da disciplina é orientado pelos problemas propostos. Cada problema introduz novos desafios que, para serem transpostos, nos levam a novas ideias e práticas de programação.

 

Python no seu computador

Em MAC0115 evitamos o uso de linguagens e sistemas proprietários. Preferimos os sistemas abertos e livres (Free and open source software).

As informações sobre a instalação necessária para o uso da linguagem de programação Python em seu computador serão divulgadas na página de MAC0115.

 

Plantão de monitores

Para auxiliá-lo, MAC0115 conta com o trabalho fundamental de cerca de 4 monitores. Os monitores darão plantão de dúvidas não presenciais em horários divulgados na página de MAC0115.

 

Exercícios-programa

Em MAC0115, os projetos que envolvem programação recebem o nome de exercícios-programa (EPs). Esta edição de MAC0115 terá 4 EPs. A data de entrega e o enunciado de cada EP serão divulgados ao longo do semestre na seção "Exercícios-programa" da página de MAC0115. O enunciado de cada EP deverá ser rigorosamente observado. A entrega dos EPs é feita eletronicamente. O depósito (upload) dos seus EPs será feito através da página de MAC0115, conforme descrito em Instruções para entrega de EPs em Python. Não são aceitos EPs fora do prazo de entrega. A correção dos EPs e suas notas também serão disponibilizadas na página de MAC0115.

 

 

Conduta ética

Os EPs de MAC0115 devem ser feitos individualmente. Você tem responsabilidade sobre cópias feitas de questões e trechos de seus EPs. Quando autores e copiadores combinam, estão ludibriando o sistema de avaliação. Quem falsifica as notas está enganando o sistema e seus colegas. EPs considerados plagiados, tanto o original como a cópia, receberão nota zero e os nomes dos alunos envolvidos serão encaminhados à Coordenação do IF.

O trabalho em grupo e a cooperação entre colegas é em geral benéfico e útil ao aprendizado. Para ajudar um colega você pode lhe explicar como resolveu um ou outro problema. Por exemplo, pode explicar que para fazer um determinado trecho de programa é possível usar dois "loops" ou que para representar os dados basta usar algumas variáveis etc... O que você não deve fazer é mostrar o seu programa! Você pode achar que a amizade é mais importante do que as considerações éticas acima, mas mostrar o seu programa pode prejudicar o aprendizado do seu colega:

Além disso, o seu colega pode eventualmente divulgar a sua solução para outros colegas, colocando-o numa situação muito complicada.

Esses problemas ocorrem em muitos lugares, e as políticas e recomendações não variam muito. Algumas recomendações da Universidade de Lisboa valem também aqui e foram reproduzidas no parágrafo anterior.

 

Médias

A média final (MF) em MAC0115 é baseada na nota da conduta ética (α) e na média de exercícios-programa (MEP), como descrito a seguir.

Nota da conduta ética

A conduta ética é medida em termos de uma nota extra que denotamos por α (alfa). A nota α é um número entre 0 e 1. No início do semestre a sua nota α é 1. Em cada ocorrência de plágio que você se envolver, haverá uma redução de pelo menos 0,3 na sua nota α. No entanto, dependendo da gravidade do caso de falta de conduta ética que você se envolva, a sua nota α pode ser 0.

Média de exercícios-programa

A média dos exercícios-programa é

MEP = α × (EP1 + 2 × EP2 + 2 × EP3 + 3 × EP4) / 8,
MEP = α × (EP1 + 2 × EP2 + 3 × EP3) / 6,
onde EP1, EP2 e EP3 são as notas do primeiro, segundo e terceiro EPs.

Média final

A média final será calculada da seguinte forma:

MF = MEP

Se MF ≥ 5, você estará aprovado; se 3 ≤ MF < 5, você estará de recuperação, e se MF < 3, você estará reprovado.

 

Recuperação

Os alunos em recuperação deverão fazer um EP de recuperação (EPRec). Esperamos que você não fique em recuperação, mas se isso acontecer, a média de recuperação, Mrec, será calculada da seguinte forma:

Mrec = (MF + 2 × EPrec) / 3,
onde EPrec é a nota obtida no EP de recuperação. Se Mrec ≥ 5, você estará aprovado; caso contrário, estará reprovado.

 


Last modified: Mon Aug 17 12:08:18 BRT 2020