Dias 16 e 18 ago, sala 334, hora da aula (ou à partir das 14h)
Apresentações individuais, em princípio na ordem abaixo, 10~15mn cada.
TERÇA
jvrates
jvandrade
agrocha
ahjacobs
ebtiggemann
mfquadros
mlpillon
gpcosta
fdbecker
QUINTA
derodrigues
rdcecchin
rtgatto
aarohr
abzanetti
rsbecker
glcamargo
rdsoares
cmrocha
fdjunior
ELC1065 DLSC/CT/UFSM
turmas SI2 e CC2, primeiro semestre 2022
professor: Benhur Stein
(benhur+l122a@inf.ufsm.br)
terças e quintas, 14h30
sala 334, prédio 7 (principal do CT)
aluno monitor: Daniel de Vargas (ddvargas@inf.ufsm.br, discord:daniel_vargas#7024)
Os canais de comunicação entre o professor e os alunos são as aulas presenciais, esta página (https://github.com/BenhurUFSM/l122a), e-mail (ver acima). Caso queira conversar fora desses canais, manda um mail que marcamos.
O e-mail pode ser usado para o envio de perguntas, exercícios, reclamações, sugestões, críticas e o que mais for, durante todo o período em que durar a disciplina.
Esta página concentrará os assuntos vistos em aula, a descrição de exercícios e trabalhos, avaliações, etc. Ela estará sendo aumentada/atualizada durante todo o semestre. Ela é o canal mais oficial de informações sobre a disciplina.
A disciplina de laboratório I de Programação é bastante prática, e exige que os alunos se dediquem bastante e desenvolvam trabalhos práticos. O objetivo da disciplina, aprender a programar computadores, envolve conceitos que podem levar um tempo razoável para serem adquiridos. A prática de programação tem se mostrado essencial nesse aprendizado. Para realizar essa prática, é necessário acesso a um computador e a um ambiente de desenvolvimento de programas. A universidade dispõe de laboratórios com computadores para acesso aos alunos, com todo o software necessário instalado; consulte o NCC caso necessite.
Em um computador pessoal, pode-se instalar um ambiente de desenvolvimento localmente ou usar um dos vários que existem gratuitamente online. O que se necessita como ambiente de desenvolvimento para a disciplina é o mais básico, basta um editor de textos e um compilador da linguagem "C". Exemplos de ambiente gratuito online: onlineGDB, replit. Os exercícios e trabalhos da disciplinas podem ser desenvolvidos nesses ambientes.
Meu ambiente pessoal de trabalho é no sistema linux, e nesse sistema posso auxiliá-los na instalação e uso de um compilador. Não tenho nenhuma experiência pessoal gratificante com windows, não vou poder auxiliá-lo com problemas diretamente relacionados ao uso desse ambiente.
Por ser uma disciplina prática, a principal forma de avaliação dos alunos será através de exercícios, principalmente o desenvolvimento de pequenos programas de computador, a serem enviados para o professor. No final do semestre, deve ser desenvolvido um trabalho final um pouco mais complexo. A descrição desses exercícios e programas, bem como a forma de entrega dos mesmos será disponibilizada nesta página.
Os trabalhos entregues não serão pontuados, mas comentados de forma individual ou coletiva. Espera-se que esses comentários sejam aproveitados para gerar novas e melhores versões dos programas, como forma de aprendizagem. Os programas podem ser alterados e reenviados ao professor, caso restem dúvidas.
A avaliação será realizada no final do semestre. Para isso, cada aluno deverá entregar a versão final de um subconjunto dos trabalhos desenvolvidos (a ser definido), juntamente com uma auto-avaliação descrevendo o seu desenvolvimento durante o semestre, contendo uma sugestão de nota.
Para quem não alcançar a nota suficiente (7), haverá uma prova escrita de recuperação (chamada exame).
Não deixem dúvidas acumularem. Quanto mais cedo conseguirmos nos comunicar para apontar problemas, expor sugestões, melhores vão ser nossas chances de sucesso.
Os assuntos vistos em aula serão listados aqui.
N | data | assunto |
---|---|---|
1 | 12abr | introdução |
2 | 14abr | primeiro programa C |
3 | 19abr | representação de números, tipos de dados numéricos |
4 | 26abr | variáveis, entrada de dados |
5 | 28abr | funções |
6 | 3mai | funções, cont |
7 | 5mai | seleção (comando if) |
8 | 10mai | repetição (comando while) |
9 | 12mai | repetição (comandos for, do..while) |
10 | 19mai | exercícios de repetição |
11 | 24mai | exercícios |
12 | 26mai | switch, passagem de parâmetros por referência |
13 | 31mai | Exercícios sobre repetição usando primos |
14 | 2jun | Resolução dos exercícios da aula anterior, Vetores |
15 | 7jun | Resolução de exercícios da aula passada (ordenação de vetor) Lista de exercícios |
16 | 9jun | Strings |
17 | 14jun | Matrizes |
18 | 21jun | Arquivos |
19 | 23jun | Exercícios sobre arquivos |
20 | 28jun | Registros |
21 | 30jun | exercícios sobre registros |
22 | 5jul | exercícios sobre registros |
23 | 7jul | Alocação dinâmica de memória |
24 | 12jul | sobre os trabalhos |
25 | 14jul | sobre os trabalhos (adicionado programa exemplo) |
26 | 19jul | trabalhos (foram adicionados os arquivos de palavras) |
27 | 21jul | trabalhos |
N | prazo | assunto |
---|---|---|
E1 | trazer dúvidas para a aula de 14abr | ver final do texto da introdução |
E2 | trazer dúvidas para a aula de 19abr | ver final do texto da 2ª aula |
E3 | trazer dúvidas para a aula de 5mai | triângulos (ver 6a aula) |
T1 | triângulos | |
T2 | ASD | jogo da velha (alterado com a pt3) |
T3 | ASD | mata-palavras |
F | 15ago, 12h | entrega final |
apresentações | 16 e 18ago | |
exame | 25ago |
Ver aqui.
Curso de programação C da UFMG
Apostila de programação da UFPR
Ajude o robozinho a iluminar o mundo (ajuda no desenvolvimento de lógica de programação, fundamental para o conteúdo da disciplina) lightbot.
Ajude o passarinho a detonar o porco (semelhante ao anterior) code.org
Os grupos PET geralmente oferecem tópicos de apoio a disciplinas iniciais.
Veja a planilha.