Plano do semestre de MC102

A Disciplina

CódigoMC102
TurmaMN
ProfessorAlexandre Tachard Passos
Horáriosterças e quintas, das 14 às 16
LocalCB02 e CB10
LaboratórioSI03/SI05 terças das 10 às 12
MonitoresRodolfo Ipolito Meneguette e Fernando Thiers
AtendimentoQuintas, das 10 às 12, sala 90 IC-3
Dúvidas ou reclamações:alexandre.tp@gmail.com

Toda aula de quinta-feira serão passados exercícios, para serem entregues no fim da próxima aula. Os exercícios serão pontuados generosamente (um décimo a menos por erro grave), e a nota média total dos exercícios entrará, junto com as três provas e o trabalho, na média final.

Bibliografia

Kernighan e Ritchie, The C Programming Language., 001.6424 K459c , BCCL e IMECC.

Bibliografia secundária: The C Book.

Evitem usar "C Completo e Total". Esse livro contém vários errinhos, vários problemas, e ensina coisas fora do escopo e do interesse da aula. É melhor não aprender do que aprender errado algumas coisas.

Programas

WindowsDev-c++
LinuxGedit+gcc
MacOSGCC + algum editor de sua escolha

No ubuntu:

 $ sudo apt-get install gedit build-essential

No fedora:

$ yum install gcc

No mac, procure no google.

Instruções

Como compilar programas no gcc:

gcc -Wall -Werror programa.c -o programa -lm

E, para testar o seu programa,

./programa

Caso você tenha um arquivo com a entrada que quiser passar para o programa (útil para testar no laboratório):

./programa < NOME_DO_ARQUIVO_COM_ENTRADA

Caso queira colocar a saída em um arquivo,

./programa > NOME_DO_ARQUIVO_SAIDA

Para comparar a saída com um modelo,

diff -u ARQUIVO_COM_SAIDA_DO_PROGRAMA ARQUIVO_MODELO

Onde "programa" é o nome do seu programa. Um programa teste para ver se tudo está funcionando corretamente:

#include <stdio.h>

int main(int argc, char *argv[]) {
  printf("Bem vindo a MC102.\n");
  return 0;
}

Trabalho

Ementa

  • Introdução à programação de computadores
  • Variáveis, comandos de atribuição, constantes
  • Comandos condicionais
  • Comandos de repetição
  • Programa, entrada e saída de dados
  • Vetores
  • Matrizes
  • Manipulação de cadeias de caracteres
  • Procedimentos e funções
  • Recursão
  • Registros
  • Ponteiros e alocação dinâmica de memória
  • Arquivos
  • Listas Ligadas

Calendário

Agosto

  • Ter 3

    Laboratório: Não haverá.

    Apresentação ao professor e ao monitor, apresentação do ambiente de laboratório. Introdução bem básica sobre o que é computação e programação.

    Notas de aula

  • Qui 5

    Apresentação das linguagens de programação. Possíveis estratégias de execução. Alto nível/baixo nível. Exemplo de programa simples. Tipos de dados.

    Notas de aula Exercícios

  • Ter 10

    Laboratório

    Sala de aula: variáveis, constantes, comandos de atribuição e operações aritméticas simples. Introdução a como ler e escrever variáveis numéricas. Precedência de operadores. Introdução a math.h

    Notas de aula

  • Qui 12

    Sala de aula: Introdução a funções e escopo. Introdução a estruturas condicionais (if e switch).

    Notas de aula

    Exercícios

  • Ter 17

    Laboratório: Fazer os exercícios com auxílio dos monitores.

    Sala de aula: Testes de mesa. Como executar programas manualmente. Exemplo de bisecção para calcular raiz de dois e ordenação de um número constante de elementos.

    Notas de aula

  • Qui 19

    Introdução a comandos de repetição. While. Do … while. For. Um exemplo não-trivial de for.

    Notas de aula

    Exercícios

  • Ter 24

    Laboratório: Exercícios da aula anterior.

    Sala de aula: Vetores. Sequências de números. Operações sobre vetores. Cuidados com possíveis problemas em usar-se vetores. Idéia de índice.

    Notas de aula

  • Qui 26

    Sala de aula: Operações simples como vetores. Operações mais complexas com vetores. Soma. Multiplicação por constante. Produto interno. Introdução a ordenação

    Notas de aula Exercícios

  • Ter 31

    Laboratório: Exercícios da aula anterior.

    Como fazer um sistema de processamento de dados com vetores apenas.

    Notas de aula

    Exercícios

Setembro

Outubro

Novembro

Dezembro

  • Qui 2 - entrega do trabalho da disciplina
  • Ter 7 - nota final da disciplina
  • Ter 14 - exame

Notas parciais

A nota final de cada aluno será 0.6*provas + 0.3*trabalho + 0.1*exercícios

RANomeE1E2E3E4E5P1E6E7E8E9P2E10P3TFINALEXAMETOTAL
016201Glauber Pittoli109.547.13.95.455.015
031177Andre Rolim10810458.11010103.5108.546.00
043786Giuliano Ricci109.5658.5104884.187.59.57.555
076579Danilo Rocha0.
081500Gisele Costa10101010109.5101010109.510107.8
090225Alessandra Nakamura109.510658.3104883.1809.55.915
091615Janaina Germano65.246.65.02
092820Renan Domingos107.5109.57106.72.54.18575.5925
092904Rodrigo Couto109.510656.1104883.6809.55.575
093558Carolina Yida1091049.88854.9756.38
093727Felipe Su0.
094197Mateus Carvalho0.20.04
095636Carlos Silva109108.33285.35
101452Ana Luiza Rezende10880.26
101785Carla Nicolau109.588109.4583.13.56.55.735
101973Darcy Cunha10101010101010109.51010109.7
102054Eduardo Maximiliano109106.5103.22.575
102078Eiji Kuriyama101010101010101010108.3108.588.76
102303Filipe Bisoffi1091010109.3410101010810109.77
102371Gabriel Araújo109.56100.355
102776João Carlos Leite10910108.3104.96.586.83
102810João Paulo Veríssimo108.5854.341.215
102821João Guarino10101078.3104.7776.57
103001Larissa Eleutério107571.026.63.825.54.66
103156Lucas Miranda106.563.0100.925
103402Mariana Gonzalez1010104.85.5043.56
103514Matheus Marrafon1061010109.8101010102.185.5107.42
103589Murilo Santana2.500.5
103742Paulo Fortes109.5105109.510109104.710746.375
103783Pedro Naloto109.5101076.3488105.010697.025
103831Rafael Meirelles109101078.348810610998.22
104871Fábio Brandão106.56.6101.0775.285
104887Felipe Machado109106.1102.22.575
105050Helena Pereira109.5868.431.82.405
105116Jessica Oliveira10101010106.5101010104.7108107.84
105120Jessica Soares109101079.39108103.9106.797.61
105310Maiara Romano101010101010101010109108109.4
105643Ricardo Ferreira10988107.3583.156.55.61
105912Caroline Baldo10886.81010103.2104.4106.54
105925Cristiano Fernandes102.5844.5101071.61.735
106091Larissa Thiegue109.510669.381010107.6102.587.175
106136Luíza de Jesus109101078.19108107104107.75
106205Paulo Licciardi10910104.00.9595.07
106431David Gutierrez1010101089.3107105.610877.53
106704Guilherme Santos108.57468.15652.07555.105
107873Thais Coelho1010108107.6582.656.55.6
108158Débora Tesserolli10101048610107102.694.5106.5
108163Eduardo Silva10101010119.510107107.5108.61
108197Karina Zaccari109.5101077.49108104.8104.5107.275
108283Heidi Sousa109.510456.51010782.610175
108286Amanda do Valle107.50.175
108300Emanuelle Rezende100.1
108379Vitor Takao1010108109.810109106.810847.09
108445Marcos Nascimento9.530.125
108544César Matos109108.12.6485.63
0.

Author: Alexandre Tachard Passos <alexandre.tp@gmail.com>

Date: 2010-12-16 14:46:39 BRST

HTML generated by org-mode 6.21b in emacs 23