Contorno da seção

    • Professor: Moacir
      - Atendimendo na Sala 4-232A : Quartas-feiras as 16h30

      Assistentes:
      - Estagiários PAE: Marcus Vinícius Lobo Costa
      - Monitores:
      Atendimento às xxxx

      Comunicação oficial no Servidor Discord: https://discord.gg/TwCzdE4mtH

    • [Notas] P1, P2, P3, Substitutiva = Notas finais Arquivo
      Disponível se: Você faz parte de T-SSC0304-2025103
    • [Notas] P1 Arquivo
      Disponível se: Você faz parte de T-SSC0304-2025103
    • [Notas] P2 Arquivo

    • ***
Conteúdo das Aulas - Cronograma
***


      0. Recepção aos calouros - 24/02 a 28/02



      1. Apresentação noções básicas em computação - 07/03
      
- programando com máquinas de Turing

      2. Apresentação e noções básicas em computação 2 - 11/03
      
- atividade 1
      - doodle Turing Machine

      3. Programação de computadores e modelo do computador - 14/03

      - linguagem de baixo nível vs alto nível
      - computador de von Neumann
      - Ken Thompson, Dennis Ritchie e outros
      - linguagem C, compilação, ld (bibliotecas ligadas) e nm (dump arquivo objeto): hello world e primeiros programas básicos com aritmética, printf, etc.
      - jogo robo

      
4. Mais sobre memória, sistemas numéricos e primeiro programa em C - 18/03

      - Claude Shannon e o sistema binário digital
- Truque de 27 cartas no sistema ternário
- Primeiro programa em C com maior complexidade
- Indexação da memória e tamanho do endereço (sistemas 32 vs 64 bits)
- variáveis e sua representação
- scanf



      5. Memória stack, endereços, entrada de dados e estrutura condicional- 21/03

      - Memória, entrada e saída



      6. Estruturas de decisão (2) - 25/03 

      - memória stack
- Armazenando endereços na memória com int*, char*
- estruturas condicionais IF e SWITCH
Ted Talk Linus [https://www.youtube.com/watch?v=o8NPllzkFhE]



      7. Estruturas de decisão - 28/03 

      IF e SWITCH - exercícios



      9. Estrutura de repetição - 01/04

      WHILE

1

      10. Arranjos e estrutura For (1) - 04/04

      Arranjos simples e aritmética de ponteiros.
Prática com For



      11. Arranjos (2) - 08/04

      Arranjos e organização da memória stack.

      Exemplos com leitura, impressão, ponteiros, etc.
Leitura recomendada: https://toggl.com/programming-princess



      12. Prova 1 - 11/04
      
Individual, toda a matéria até a aula 12 (Arranjos)

      CONSULTA DE 1 FOLHA A4



      *** Semana santa



      13. Funções e escopo de variáveis (global, local, estática) (1) - 22/04
      
Exemplo com cálculo e retorno


      4.  Funções com passagem de parâmetros - 25/04
      
Primeiro exemplo com passagem de parâmetros

      

15. Matrizes e Arranjos ND - 29/04

      

17. Alocação Dinâmica (1) - 06/05
      - Videos Assíncronos

      Memória stack e heap

      Alocação na memória heap: malloc() e free()




      18. Alocação dinâmica (2) - 09/05

      Memory Leak + Valgrind

      Alocação de arrays e matrizes

      

19. Alocação dinâmica (3) - 13/05 

      Alocando vetor em função (retornando endereço ou por referência/parametro)

      

20. Exercícios - 16/05



      21. Coding Dojo - 20/05  



      22. Prova 2 - 23/05

      27 e 30/05 - Revisão

      * 2 a 6/06 - SEMATRON



      23. Strings - 10/06
      Arranjos de caracteres - caracteres especiais e terminador '\0'
      Funções para leitura de strings: fgets(str, tam, stream) / getline(&str, &tam, stream)
      Processamento de strings

      24. Structs+Strings - 13/06

      Vídeo Strings:


      Exercícios:
      - ler duas strings, e fazer uma função para encontrar e retornar quantas vezes a segunda string aparece na primeira. Exemplo: "arara", "ar", resultado = 2
      - implementar uma função que a partir de uma string inicial, aloca dinamicamente uma segunda string do mesmo tamanho, invertendo os caracteres e retorna essa string. Ex: entrada = "Sao Carlos", segunda string = "solraC oaS". Use essa função na main imprimindo a string

      Vídeo Structs


      Exercícios
      - Continuar o código da aula, realizando um programa com um Menu que permite (1) cadastrar um livro, (2) listar os livros do cadastro, (3) buscar um livro com base no título (4) editar um livro cadastrado - a partir da busca com base no título, (5) vender um livro com base no título, (6) sair. O usuário escolhe uma das 6 opções e o programa sempre volta no menu para permitir uma nova ação, até sair do programa. Use para isso uma struct de livros contendo: título, autor, ano, preço e quantidade em estoque. Implemente uma função por vez.

      25. Arquivos - 17/06


      arquivo binário: fwrite / fread

      arquivo texto: fprintf / fscanf



      26. Revisão + Exercícios - 24/06
      - revisão últimos temas
      - atividade em sala - pontos na P2

      27. Exercícios - 27/06
      Atividade em laboratório com structs, alocação e arquivos - pontos na P2

      
28. Prova 3 - 01/07
      
Individual no laboratório!

      Consulta de 1 folha A4

      Uso do Run.codes

      

29. Substitutiva - 04/07
      
Individual no laboratório!

      Consulta de 1 folha A4

      Uso do Run.codes