Mudanças entre as edições de "PRG29002 - Programação I - Eng.Telecom 2023-2"
(Criou página com '=PROFESSOR= ''Professor'': Tiago Semprebom <br>''Email'': tisemp@ifsc.edu.br <br> ''diretório web:'': tele.sj.ifsc.edu.br/~tisemp <br> <br> '''IMPORTANTE:''' o direito de...') |
|||
(46 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 5: | Linha 5: | ||
<br> | <br> | ||
<br> '''IMPORTANTE:''' o direito de recuperar uma avaliação em que se faltou somente existe mediante justificativa reconhecida pela coordenação. Assim, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação, e aguardar o parecer da coordenação. O não cumprimento desse procedimento implica a impossibilidade de fazer a recuperação, e assim a reprovação na disciplina. | <br> '''IMPORTANTE:''' o direito de recuperar uma avaliação em que se faltou somente existe mediante justificativa reconhecida pela coordenação. Assim, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação, e aguardar o parecer da coordenação. O não cumprimento desse procedimento implica a impossibilidade de fazer a recuperação, e assim a reprovação na disciplina. | ||
+ | |||
+ | <br>'''ATENÇÃO:''' todos os estudantes devem se apropriar do Regulamento Didático-Pedagógico (RDP) do IFSC. | ||
=ATENDIMENTO PARALELO= | =ATENDIMENTO PARALELO= | ||
− | + | TERÇAS: 17h às 18h. | |
− | + | QUINTAS: 11h às 12h. | |
− | LOCAL: Sala 2 de Professores de Telecomunicações. | + | LOCAL: Sala 2 de Professores de Telecomunicações / Gabinete da Direção-Geral. |
=MONITORIA= | =MONITORIA= | ||
Linha 33: | Linha 35: | ||
=Aulas= | =Aulas= | ||
− | == | + | ==27/07/2023: Introdução a algoritmos== |
===Objetivos=== | ===Objetivos=== | ||
Linha 44: | Linha 46: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_1_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Aula Introdutória sobre Lógica de Programação] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_1_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Aula Introdutória sobre Lógica de Programação] | ||
− | ==01/08/ | + | ==01/08/2023: Lógica de Programação - Estruturas de Decisão== |
− | ==Objetivos== | + | ===Objetivos=== |
*Introdução a Fluxograma e Pseudocódigo. | *Introdução a Fluxograma e Pseudocódigo. | ||
*Estruturas de Decisão. | *Estruturas de Decisão. | ||
− | ==Material de Referência== | + | ===Material de Referência=== |
− | + | ==03/08/2023: Viagem ao JIFSC (Blumenau/SC)== | |
+ | *Exercícios. | ||
− | == | + | ==08/08/2023: Lógica de Programação - Estruturas de Repetição== |
− | |||
− | |||
+ | ===Objetivos=== | ||
*Introdução a Fluxograma e pseudocódigo. | *Introdução a Fluxograma e pseudocódigo. | ||
*Estruturas de Decisão | *Estruturas de Decisão | ||
− | ==Material de Referência== | + | ===Material de Referência=== |
− | |||
[[AULA 3 - Programação 1 - Engenharia | Lógica de Programação: Estruturas de Repetição]] | [[AULA 3 - Programação 1 - Engenharia | Lógica de Programação: Estruturas de Repetição]] | ||
− | == | + | ==10/08/2023: Lógica de Programação - Estruturas de Repetição (cont)== |
− | ==Objetivos== | + | ===Objetivos=== |
*Introdução a Fluxograma e pseudocódigo. | *Introdução a Fluxograma e pseudocódigo. | ||
*Estruturas de Decisão | *Estruturas de Decisão | ||
− | ==Material de Referência== | + | ===Material de Referência=== |
− | |||
[[AULA 3 - Programação 1 - Engenharia | Lógica de Programação: Estruturas de Repetição]] | [[AULA 3 - Programação 1 - Engenharia | Lógica de Programação: Estruturas de Repetição]] | ||
− | == | + | ==18/08/2023: Introdução a Programação C== |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ===Objetivos=== | ||
*descrever o processo de compilação; | *descrever o processo de compilação; | ||
*diferenciar código fonte, objeto e executável; | *diferenciar código fonte, objeto e executável; | ||
Linha 98: | Linha 86: | ||
*usar as funções de entrada e saída: ''scanf()'' e ''printf()''. | *usar as funções de entrada e saída: ''scanf()'' e ''printf()''. | ||
− | ==Material de Referência== | + | ===Material de Referência=== |
− | |||
[[AULA 4 - Programação 1 - Engenharia | Introdução a Programação C]] | [[AULA 4 - Programação 1 - Engenharia | Introdução a Programação C]] | ||
− | == | + | ===Tarefa=== |
− | |||
*Estudar AULA 2 e 3 de [http://wiki.sj.ifsc.edu.br/images/8/82/Curso_de_linguagem_C_UFMG.pdf Apostila de C - UFMG] | *Estudar AULA 2 e 3 de [http://wiki.sj.ifsc.edu.br/images/8/82/Curso_de_linguagem_C_UFMG.pdf Apostila de C - UFMG] | ||
− | == | + | ==17/08/2023: Introdução a Linguagem C (exercícios)== |
− | ==Objetivos== | + | ===Objetivos=== |
− | + | Exercícios: Introdução a Linguagem C. | |
− | Exercícios: Introdução a Linguagem C | ||
− | |||
− | |||
+ | ===Material e Referência=== | ||
[[AULA 4 - Programação 1 - Engenharia | Introdução a Programação C]] | [[AULA 4 - Programação 1 - Engenharia | Introdução a Programação C]] | ||
− | ==22/08/ | + | ==22/08/2023: Estruturas de Decisão== |
− | ==Objetivos== | + | ===Objetivos=== |
− | + | *Utilizar os operadores relacionais e lógicos na programação C. | |
− | *Utilizar os operadores relacionais e lógicos na programação C | + | *um pouco mais sobre variáveis: tipo char. |
− | *um pouco mais sobre variáveis: tipo char | + | *Utilizar o comando de decisão if else. |
− | *Utilizar o comando de decisão if else | + | *Utilizar o comando switch. |
− | *Utilizar o comando switch | ||
− | |||
− | |||
+ | ===Material e Referência=== | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_5_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estrutura de Decisão] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_5_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estrutura de Decisão] | ||
− | == | + | ==24/08/2023: Estruturas de Decisão== |
− | ==Objetivos== | + | ===Objetivos=== |
− | + | *Utilizar os operadores relacionais e lógicos na programação C. | |
− | *Utilizar os operadores relacionais e lógicos na programação C | + | *um pouco mais sobre variáveis: tipo char. |
− | *um pouco mais sobre variáveis: tipo char | + | *Utilizar o comando de decisão if else. |
− | *Utilizar o comando de decisão if else | + | *Utilizar o comando switch. |
− | *Utilizar o comando switch | ||
− | |||
− | |||
+ | ===Material e Referência=== | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_5_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estrutura de Decisão] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_5_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estrutura de Decisão] | ||
− | ==29/08/ | + | ==29/08/2023: Estruturas de Repetição== |
− | ==Objetivos== | + | ===Objetivos=== |
− | + | *Estruturas de Repetição. | |
− | *Estruturas de Repetição | ||
− | |||
− | |||
+ | ===Material e Referência=== | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_6_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas de Repetição] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_6_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas de Repetição] | ||
− | == | + | ==31/08/2023: Estruturas de Repetição== |
− | |||
− | |||
+ | ===Objetivos=== | ||
*Estruturas de Repetição (continuação) | *Estruturas de Repetição (continuação) | ||
− | ==Material e Referência== | + | ===Material e Referência=== |
− | |||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_6_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas de Repetição] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_6_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas de Repetição] | ||
− | ==05/09/ | + | ==05/09/2023: Estruturas de Repetição== |
− | ==Objetivos== | + | ===Objetivos=== |
− | + | * Resolução de exercícios (revisão Avaliação 1). | |
− | * | ||
− | |||
− | |||
+ | ===Material e Referência=== | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_6_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas de Repetição] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_6_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas de Repetição] | ||
− | == | + | ==07/09/2023: Feriado Nacional== |
− | * | + | *Independência do Brasil. |
− | |||
− | |||
− | + | ==12/09/2023: '''AVALIAÇÃO 1'''== | |
+ | * Local: laboratório de informática. | ||
− | == | + | ==14/09/2023: Vista de prova (Avaliação 1)== |
− | |||
− | |||
===Objetivos=== | ===Objetivos=== | ||
− | *Correção dos exercícios [http://tele.sj.ifsc.edu.br/~tisemp/PRG/avaliacao_1.pdf Avaliação 1]; | + | * Correção dos exercícios [http://tele.sj.ifsc.edu.br/~tisemp/PRG/avaliacao_1.pdf Avaliação 1]; |
* Uso de IDE ([https://www.jetbrains.com/clion/ CLion]). | * Uso de IDE ([https://www.jetbrains.com/clion/ CLion]). | ||
Linha 191: | Linha 162: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_X_-_Programa%C3%A7%C3%A3o_1_-_Uso_de_IDE_com_o_C Uso de IDE] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_X_-_Programa%C3%A7%C3%A3o_1_-_Uso_de_IDE_com_o_C Uso de IDE] | ||
− | ==19/09/ | + | ==19/09/2023: Conceito de Funções e Parâmetros== |
+ | * Prof. Tiago estará em BSB, haverá aula com segundo docente da disciplina. | ||
===Objetivos=== | ===Objetivos=== | ||
Linha 200: | Linha 172: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_8_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Funções] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_8_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Funções] | ||
− | == | + | ==21/09/2023: Funções== |
+ | * Prof. Tiago estará em BSB, haverá aula com segundo docente da disciplina. | ||
===Objetivos=== | ===Objetivos=== | ||
− | *Resoluções de exercícios sobre Funções. | + | * Resoluções de exercícios sobre Funções. |
===Material e Referência=== | ===Material e Referência=== | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_8_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Funções] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_8_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Funções] | ||
− | ==26/09/ | + | ==26/09/2023: Vetores== |
===Objetivos=== | ===Objetivos=== | ||
*Compreender o conceito de vetores; | *Compreender o conceito de vetores; | ||
*Definir e inicializar vetores do tipo int, float e double no C; | *Definir e inicializar vetores do tipo int, float e double no C; | ||
− | *Passar vetores como parâmetro sem usar o conceito de ponteiros | + | *Passar vetores como parâmetro sem usar o conceito de ponteiros. |
===Material e Referência=== | ===Material e Referência=== | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_9_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Vetores] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_9_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Vetores] | ||
− | == | + | ==28/09/2023: Arranjos Vetores (strings)== |
===Objetivos=== | ===Objetivos=== | ||
Linha 227: | Linha 200: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_10_-_Programação_1_-_Engenharia Strings] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_10_-_Programação_1_-_Engenharia Strings] | ||
− | ==03/10/ | + | ==03/10/2023: Arranjos Multidimensionais == |
− | |||
− | |||
− | |||
===Objetivos=== | ===Objetivos=== | ||
Linha 241: | Linha 211: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_12_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Matrizes] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_12_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Matrizes] | ||
− | == | + | ==05/10/2023: Arranjos Multidimensionais == |
===Objetivos=== | ===Objetivos=== | ||
Linha 250: | Linha 220: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_12_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Matrizes] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_12_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Matrizes] | ||
− | == | + | ==10/10/2023: Resolução de Exercícios: vetores e matrizes== |
===Objetivos=== | ===Objetivos=== | ||
Linha 420: | Linha 390: | ||
{{collapse bottom}} | {{collapse bottom}} | ||
− | == | + | ==12/10/2023: Feriado Nacional == |
+ | *Padroeira do Brasil (Nossa Senhora Aparecida). | ||
− | == | + | ==17/10/2023: Estruturas== |
===Objetivos=== | ===Objetivos=== | ||
Linha 434: | Linha 405: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_13_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_13_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas] | ||
− | == | + | ==19/10/2023: '''AVALIAÇÃO 2'''== |
− | + | * Local: laboratório de informática. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==24/10/2023: Correção Avaliação 2== | |
− | |||
− | // | ||
− | |||
− | + | ==26/10/2023: Estruturas (cont')== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===Objetivos=== | ===Objetivos=== | ||
Linha 556: | Linha 422: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_13_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_13_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Estruturas] | ||
− | == | + | ==31/10/2023: Ponteiros== |
===Objetivos=== | ===Objetivos=== | ||
Linha 564: | Linha 430: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_17_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Ponteiros] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_17_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Ponteiros] | ||
− | == | + | ==02/11/2023: Feriado Nacional == |
+ | *Finados. | ||
+ | |||
+ | ==07/11/2023: Apresentação do Projeto da Disciplina== | ||
+ | * Prof. Tiago estará no REDITEC (Natal/RN), haverá aula com segundo docente da disciplina. | ||
===Objetivos=== | ===Objetivos=== | ||
Linha 571: | Linha 441: | ||
===Material e Referência=== | ===Material e Referência=== | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_17_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Ponteiros] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_17_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Ponteiros] | ||
− | |||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_Proposta_de_Projetos_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Proposta e Requisitos para os Projetos da Disciplina.] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_Proposta_de_Projetos_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Proposta e Requisitos para os Projetos da Disciplina.] | ||
− | == | + | ==09/11/2023: Vetor de Ponteiros== |
+ | * Prof. Tiago estará em REDITEC (Natal/RN), haverá aula com segundo docente da disciplina. | ||
===Objetivos=== | ===Objetivos=== | ||
Linha 585: | Linha 455: | ||
[https://wiki.sj.ifsc.edu.br/index.php/AULA_19_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Vetor de Ponteiros e Ponteiro Para Estruturas.] | [https://wiki.sj.ifsc.edu.br/index.php/AULA_19_-_Programa%C3%A7%C3%A3o_1_-_Engenharia Vetor de Ponteiros e Ponteiro Para Estruturas.] | ||
− | ==14/11/ | + | ==14/11/2023: Acesso ao Sistema de Arquivos - parte 1== |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==16/11/2023: Acesso ao Sistema de Arquivos - parte 2== | |
− | |||
− | |||
− | + | ==21/11/2023: '''AVALIAÇÃO 3'''== | |
− | + | *Local: laboratório de Informática. | |
− | |||
− | |||
− | + | ==23/11/2023: Correção Avaliação 3== | |
− | |||
− | |||
− | + | ==28/11/2023: Desenvolvimento do Projeto== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==30/11/2023: Desenvolvimento do Projeto== | |
− | + | ==05/12/2023: Desenvolvimento do Projeto== | |
− | + | *Haverá aula com segundo docente da disciplina. | |
− | |||
− | |||
− | + | ==07/12/2023: Recuperações finais da disciplina == | |
− | + | *Haverá aula com segundo docente da disciplina. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==12/12/2023: Desenvolvimento do Projeto== | |
− | + | * Sem aula presencial. | |
− | |||
− | |||
− | + | ==14/12/2023: Desenvolvimento do Projeto== | |
− | + | * Sem aula presencial. | |
− | |||
− | |||
− | |||
− | == | + | ==19/12/2023: Apresentação do Projeto da Disciplina== |
Edição atual tal como às 15h17min de 25 de julho de 2023
PROFESSOR
Professor: Tiago Semprebom
Email: tisemp@ifsc.edu.br
diretório web:: tele.sj.ifsc.edu.br/~tisemp
IMPORTANTE: o direito de recuperar uma avaliação em que se faltou somente existe mediante justificativa reconhecida pela coordenação. Assim, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação, e aguardar o parecer da coordenação. O não cumprimento desse procedimento implica a impossibilidade de fazer a recuperação, e assim a reprovação na disciplina.
ATENÇÃO: todos os estudantes devem se apropriar do Regulamento Didático-Pedagógico (RDP) do IFSC.
ATENDIMENTO PARALELO
TERÇAS: 17h às 18h. QUINTAS: 11h às 12h.
LOCAL: Sala 2 de Professores de Telecomunicações / Gabinete da Direção-Geral.
MONITORIA
- Aluno(a): Fulano de Tal
- e-mail: xxxxxxxxx@aluno.ifsc.edu.br
- Horários:
Segunda-feira: 13:30 - 15:30
Terça-feira: 13:30 - 16:30
Quarta-feira: 13:00 - 16:00
Quinta-feira: 16:00 - 17:30
Sexta-feira: 11:30 - 14:00
- Local de Atendimento: Sala de monitoria (ao lado do banheiro masculino do térreo).
Links Interessantes
- https://www.w3resource.com/c-programming-exercises
- Lógica de Programação, de Paulo Sérgio de Moraes
Aulas
27/07/2023: Introdução a algoritmos
Objetivos
- Apresentação do Plano de Ensino;
- Introdução a Fluxograma e pseudocódigo.
Material de Referência
Aula Introdutória sobre Lógica de Programação
01/08/2023: Lógica de Programação - Estruturas de Decisão
Objetivos
- Introdução a Fluxograma e Pseudocódigo.
- Estruturas de Decisão.
Material de Referência
03/08/2023: Viagem ao JIFSC (Blumenau/SC)
- Exercícios.
08/08/2023: Lógica de Programação - Estruturas de Repetição
Objetivos
- Introdução a Fluxograma e pseudocódigo.
- Estruturas de Decisão
Material de Referência
Lógica de Programação: Estruturas de Repetição
10/08/2023: Lógica de Programação - Estruturas de Repetição (cont)
Objetivos
- Introdução a Fluxograma e pseudocódigo.
- Estruturas de Decisão
Material de Referência
Lógica de Programação: Estruturas de Repetição
18/08/2023: Introdução a Programação C
Objetivos
- descrever o processo de compilação;
- diferenciar código fonte, objeto e executável;
- compilar, executar pequenos programa em C usando o gcc;
- declarar e usar variáveis locais inteiras e reais;
- usar as funções de entrada e saída: scanf() e printf().
Material de Referência
Tarefa
- Estudar AULA 2 e 3 de Apostila de C - UFMG
17/08/2023: Introdução a Linguagem C (exercícios)
Objetivos
Exercícios: Introdução a Linguagem C.
Material e Referência
22/08/2023: Estruturas de Decisão
Objetivos
- Utilizar os operadores relacionais e lógicos na programação C.
- um pouco mais sobre variáveis: tipo char.
- Utilizar o comando de decisão if else.
- Utilizar o comando switch.
Material e Referência
24/08/2023: Estruturas de Decisão
Objetivos
- Utilizar os operadores relacionais e lógicos na programação C.
- um pouco mais sobre variáveis: tipo char.
- Utilizar o comando de decisão if else.
- Utilizar o comando switch.
Material e Referência
29/08/2023: Estruturas de Repetição
Objetivos
- Estruturas de Repetição.
Material e Referência
31/08/2023: Estruturas de Repetição
Objetivos
- Estruturas de Repetição (continuação)
Material e Referência
05/09/2023: Estruturas de Repetição
Objetivos
- Resolução de exercícios (revisão Avaliação 1).
Material e Referência
07/09/2023: Feriado Nacional
- Independência do Brasil.
12/09/2023: AVALIAÇÃO 1
- Local: laboratório de informática.
14/09/2023: Vista de prova (Avaliação 1)
Objetivos
- Correção dos exercícios Avaliação 1;
- Uso de IDE (CLion).
Material e Referência
19/09/2023: Conceito de Funções e Parâmetros
- Prof. Tiago estará em BSB, haverá aula com segundo docente da disciplina.
Objetivos
- Funções e parâmetros
- Variáveis Locais e Globais
Material e Referência
21/09/2023: Funções
- Prof. Tiago estará em BSB, haverá aula com segundo docente da disciplina.
Objetivos
- Resoluções de exercícios sobre Funções.
Material e Referência
26/09/2023: Vetores
Objetivos
- Compreender o conceito de vetores;
- Definir e inicializar vetores do tipo int, float e double no C;
- Passar vetores como parâmetro sem usar o conceito de ponteiros.
Material e Referência
28/09/2023: Arranjos Vetores (strings)
Objetivos
- Vetores de char e strings;
- Processamento de Strings.
Material e Referência
03/10/2023: Arranjos Multidimensionais
Objetivos
- Definindo matrizes no C;
- Operações com matrizes e passagem de parâmetros tipo matriz;
- Matrizes com caracteres;
- Exercícios.
Material e Referência
05/10/2023: Arranjos Multidimensionais
Objetivos
- Matrizes com caracteres (strings);
- Exercícios.
Material e Referência
10/10/2023: Resolução de Exercícios: vetores e matrizes
Objetivos
- Resolução de Exercícios de preparação
Questão 1
Implementar uma função C que recebe dois vetores de char como parâmetro. No primeiro vetor se encontra uma string qualquer. A função deve copiar esta string para o segundo vetor. A função deve retornar a quantidade de espaços em branco eliminados. Segue o esqueleto e uma saída para a situação colocada no main.
#include <stdio.h>
int eliminar_espaco(char x[], char y[])
{
}
main()
{
}
solução |
---|
//desenvolvido pelo aluno: Jeferson Jair (2019-1)
#include <stdio.h>
int contar_espaco(char x[], char y[]){
int i, cont=0;
for(i=0; x[i]!=0 ;i++){
y[i]=x[i];
if(x[i]==' ')
cont++;
}
y[i++]=0;
return cont;
}
int main(){
char a[40] = "Instituto Federal do Santa Catarina";
char b[40];
printf("String b = %s com um total de %d espaços\n", b, contar_espaco(a,b));
return 0;
}
|
solução |
---|
#include <stdio.h>
int eliminar_espaco(char x[], char y[])
{
int i, /* index do vetor fonte */
j, /* index do vetor de destino */
cont;
i=0;
j=0;
cont=0;
while(x[i]!='\0') {
if (x[i]==' ') {
cont++; /* contar ocorrências do espaço */
} else {
y[j]=x[i]; /* copiar normalmente */
j++; /* incrementar para avançar o index de y após a cópia */
}
i++; /* sempre avançar o index de x */
}
y[j]='\0';
return cont; /* retornar a contagem de espaços */
}
int main()
{
char vetor1[100]=" Instituto Federal de Santa Catarina ",
vetor2[100];
int espacos;
espacos = eliminar_espaco(vetor1, vetor2);
printf("vetor final = %s - total espaços = %d\n", vetor2, espacos);
return 0;
}
|
Questão 2
Implementar uma função que recebe um vetor de inteiros e sua dimensão como parâmetros. A função deve retornar a média de TODOS os números ímpares NÃO NEGATIVOS contidos no vetor. Uma demonstração do uso da função deve ser apresentado no programa principal (função main) usando variáveis inicializadas (NÃO USAR scanf)
solução |
---|
#include <stdio.h>
float media_num_impar(int x[], int len)
{
int i,soma,cont;
soma=0;
cont=0;
for (i=0;i<len;i++){
if (x[i]>0 && x[i]%2==1) {
soma = soma + x[i];
cont++;
}
}
return (float)soma/cont; /* aqui teria um problema de truncamento se não houver casting*/
}
main()
{
int alfa[5]={-5,-3,7,10,11};
float media;
media = media_num_impar(alfa, 5);
printf("media ímpares não negativos do vetor = %f\n", media);
}
|
Questão 3
Implementar uma função que recebe uma matriz de floats 5x5 como parâmetro. A função deve computar a média de todos os números que fazem parte de linhas PARES e colunas ÍMPARES (considerando sempre que a primeira linha é a 0 e a primeira coluna é 0). Uma demonstração do uso da função deve ser apresentado no programa principal (função main) usando variáveis inicializadas (NÃO USAR scanf)
solução |
---|
#include <stdio.h>
#define TAM 5
float media_lin_col(float vet[TAM][TAM])
{
int i,j;
float media_soma=0;
int cont=0;
for (i=0;i<TAM;i++)
for (j=0;j<TAM;j++) {
if((i%2==0)&&(j%2==1)) {
media_soma = media_soma + vet[i][j];
cont++;
}
}
media_soma = media_soma/cont;
return media_soma;
}
int main()
{
float x[TAM][TAM] = { 1 ,2, 3, 4 ,5,
1 ,2, 3, 4 ,5,
1 ,2, 3, 4 ,5,
1 ,2, 3, 4 ,5,
1 ,2, 3, 4 ,5,
};
float media;
media = media_lin_col(x);
printf("Média: %.2f\n", media);
return 0;
}
|
12/10/2023: Feriado Nacional
- Padroeira do Brasil (Nossa Senhora Aparecida).
17/10/2023: Estruturas
Objetivos
- Definição de estruturas;
- Estruturas como parâmetros;
- Inicialização de estruturas;
- Cópia de estruturas;
- Exercícios com estruturas.
Material e Referência
19/10/2023: AVALIAÇÃO 2
- Local: laboratório de informática.
24/10/2023: Correção Avaliação 2
26/10/2023: Estruturas (cont')
Objetivos
- Definição de estruturas;
- Estruturas como parâmetros;
- Inicialização de estruturas;
- Cópia de estruturas;
- Exercícios com estruturas.
Material e Referência
31/10/2023: Ponteiros
Objetivos
iniciação ao uso de ponteiros no C.
Material e Referência
02/11/2023: Feriado Nacional
- Finados.
07/11/2023: Apresentação do Projeto da Disciplina
- Prof. Tiago estará no REDITEC (Natal/RN), haverá aula com segundo docente da disciplina.
Objetivos
- Exercícios Ponteiros em C.
Material e Referência
Ponteiros Proposta e Requisitos para os Projetos da Disciplina.
09/11/2023: Vetor de Ponteiros
- Prof. Tiago estará em REDITEC (Natal/RN), haverá aula com segundo docente da disciplina.
Objetivos
- Vetor de ponteiros;
- argc e argv;
- ponteiros para qualquer coisa;
- ponteiros para estruturas.
Material e Referência
Vetor de Ponteiros e Ponteiro Para Estruturas.
14/11/2023: Acesso ao Sistema de Arquivos - parte 1
16/11/2023: Acesso ao Sistema de Arquivos - parte 2
21/11/2023: AVALIAÇÃO 3
- Local: laboratório de Informática.
23/11/2023: Correção Avaliação 3
28/11/2023: Desenvolvimento do Projeto
30/11/2023: Desenvolvimento do Projeto
05/12/2023: Desenvolvimento do Projeto
- Haverá aula com segundo docente da disciplina.
07/12/2023: Recuperações finais da disciplina
- Haverá aula com segundo docente da disciplina.
12/12/2023: Desenvolvimento do Projeto
- Sem aula presencial.
14/12/2023: Desenvolvimento do Projeto
- Sem aula presencial.