{"id":45095,"date":"2025-09-09T15:55:40","date_gmt":"2025-09-09T18:55:40","guid":{"rendered":"https:\/\/portifolioos-prontos.com\/?post_type=product&#038;p=45095"},"modified":"2025-10-11T13:47:32","modified_gmt":"2025-10-11T16:47:32","slug":"aula-pratica-algoritmos-e-tecnicas-de-programacaoc","status":"publish","type":"product","link":"https:\/\/portifolioos-prontos.com\/index.php\/product\/aula-pratica-algoritmos-e-tecnicas-de-programacaoc\/","title":{"rendered":"Aula Pr\u00e1tica Algoritmos e T\u00e9cnicas de Programa\u00e7\u00e3o"},"content":{"rendered":"<div class=\"elementor-element elementor-element-2722ab7 elementor-widget elementor-widget-woocommerce-product-title elementor-page-title elementor-widget-heading\" data-id=\"2722ab7\" data-element_type=\"widget\" data-widget_type=\"woocommerce-product-title.default\">\n<div class=\"elementor-widget-container\">\n<p class=\"product_title entry-title elementor-heading-title elementor-size-default\"><strong>Aula Pr\u00e1tica Algoritmos e T\u00e9cnicas de Programa\u00e7\u00e3o<\/strong><\/p>\n<p>ALGORITMOS E T\u00c9CNICAS<br \/>\nDE PROGRAMA\u00c7\u00c3O<br \/>\nRoteiro<br \/>\nAula Pr\u00e1tica<br \/>\n2<br \/>\nROTEIRO DE AULA PR\u00c1TICA<br \/>\nNOME DA DISCIPLINA: ALGORITMOS E T\u00c9CNICAS DE PROGRAMA\u00c7\u00c3O<br \/>\nUnidade: 2 \u2013 CONSTANTES, VARI\u00c1VEIS E OPERA\u00c7\u00d5ES<br \/>\nAula: 3 \u2013 OPERA\u00c7\u00d5ES E EXPRESS\u00d5ES<br \/>\nOBJETIVOS<br \/>\n\u2713 Compreender a defini\u00e7\u00e3o e utiliza\u00e7\u00e3o de constantes e vari\u00e1veis em linguagens de<br \/>\nprograma\u00e7\u00e3o.<br \/>\n\u2713 Familiarizar-se com tipos de dados primitivos e compostos.<br \/>\n\u2713 Praticar opera\u00e7\u00f5es e express\u00f5es em C.<br \/>\n\u2713 Explorar o uso de ponteiros e a manipula\u00e7\u00e3o de mem\u00f3ria.<br \/>\nSOLU\u00c7\u00c3O DIGITAL<br \/>\n\u2022 Computador com um compilador C\/C++ instalado justamente com a IDE Code::Blocks.<br \/>\nLINK SOLU\u00c7\u00c3O DIGITAL (EXCETO ALGETEC): https:\/\/www.codeblocks.org\/downloads\/<br \/>\nCode::Blocks \u00e9 um ambiente de desenvolvimento integrado de c\u00f3digo aberto e multiplataforma.<br \/>\nEle foi desenvolvido em C++, usando wxWidgets. Sua arquitetura \u00e9 orientada a plugin, de forma<br \/>\nque suas funcionalidades s\u00e3o definidas pelos plugins fornecidos a ele. Code::Blocks \u00e9 voltado<br \/>\npara o desenvolvimento em C\/C++.<br \/>\nPROCEDIMENTO\/ATIVIDADE<br \/>\nATIVIDADE PROPOSTA:<br \/>\nDesenvolver um programa em C que utilize vari\u00e1veis prim\u00e1rias e compostas, ponteiros,<br \/>\nconstantes e opera\u00e7\u00f5es matem\u00e1ticas. Bem como fun\u00e7\u00f5es de exibi\u00e7\u00e3o de resultados.<br \/>\nPROCEDIMENTOS PARA A REALIZA\u00c7\u00c3O DA ATIVIDADE:<br \/>\nPasso 1: Incluindo Bibliotecas e Definindo Constantes<br \/>\nCome\u00e7amos incluindo as bibliotecas necess\u00e1rias para fun\u00e7\u00f5es de entrada\/sa\u00edda (`stdio.h`) e<br \/>\nmanipula\u00e7\u00e3o de strings (`string.h`). Em seguida, definimos algumas constantes.<br \/>\n#include<br \/>\n#include<br \/>\n3<br \/>\n\/\/ Defini\u00e7\u00e3o de constantes<br \/>\n#define MAX_STRING_LENGTH 50<br \/>\nconst int CONST_NUM = 100;<br \/>\nPasso 2: Declara\u00e7\u00e3o de Vari\u00e1veis<br \/>\nDeclaramos as vari\u00e1veis que usaremos no programa, incluindo vari\u00e1veis prim\u00e1rias (inteiros, float,<br \/>\nstring), vari\u00e1veis compostas (vetor, matriz) e ponteiros.<br \/>\nint main() {<br \/>\n\/\/ Vari\u00e1veis prim\u00e1rias<br \/>\nint num1, num2;<br \/>\nfloat num3;<br \/>\nchar str[MAX_STRING_LENGTH];<\/p>\n<p>\/\/ Vari\u00e1veis compostas<br \/>\nint vetor[3] = {1, 2, 3}; \/\/ Vetor inicializado com 3 elementos<br \/>\nint matriz[2][2] = {{1, 2}, {3, 4}}; \/\/ Matriz 2\u00d72 inicializada<\/p>\n<p>\/\/ Ponteiros<br \/>\nint *ptr_num1;<br \/>\nPasso 3: Atribui\u00e7\u00e3o Inicial<br \/>\nFazemos a atribui\u00e7\u00e3o inicial de valores para algumas vari\u00e1veis e atribu\u00edmos o endere\u00e7o de `num1`<br \/>\nao ponteiro `ptr_num1`.<br \/>\n\/\/ Atribui\u00e7\u00e3o inicial<br \/>\nnum1 = 10;<br \/>\nnum2 = 20;<br \/>\nnum3 = 15.5;<br \/>\nstrcpy(str, \u201cExemplo\u201d);<\/p>\n<p>\/\/ Atribui\u00e7\u00e3o de ponteiro<br \/>\nptr_num1 = &amp;num1;<br \/>\nPasso 4: Entrada do Usu\u00e1rio<br \/>\nSolicitamos ao usu\u00e1rio que insira valores para `num1`, `num2`, `num3` e `str`.<br \/>\n4<br \/>\n\/\/ Entrada do usu\u00e1rio<br \/>\nprintf(\u201cDigite um n\u00famero inteiro: \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num1);<\/p>\n<p>printf(\u201cDigite outro n\u00famero inteiro: \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num2);<\/p>\n<p>printf(\u201cDigite um n\u00famero real: \u201c);<br \/>\nscanf(\u201c%f\u201d, &amp;num3);<\/p>\n<p>printf(\u201cDigite uma string: \u201c);<br \/>\nscanf(\u201c%s\u201d, str);<br \/>\nPasso 5: Opera\u00e7\u00f5es Matem\u00e1ticas e Booleanas<br \/>\nRealizamos algumas opera\u00e7\u00f5es matem\u00e1ticas (soma e m\u00e9dia) e booleanas, e armazenamos os<br \/>\nresultados em vari\u00e1veis.<br \/>\n\/\/ Opera\u00e7\u00f5es matem\u00e1ticas<br \/>\nint soma = num1 + num2;<br \/>\nfloat media = (num1 + num2 + num3) \/ 3;<\/p>\n<p>\/\/ Opera\u00e7\u00f5es booleanas<br \/>\nint resultado_bool = (num1 &gt; num2) &amp;&amp; (num3 &gt; CONST_NUM);<br \/>\nPasso 6: Exibi\u00e7\u00e3o dos Resultados<br \/>\nExibimos os resultados das opera\u00e7\u00f5es matem\u00e1ticas e booleanas, al\u00e9m dos valores dos elementos<br \/>\ndo vetor, matriz e ponteiro, e os endere\u00e7os de mem\u00f3ria.<br \/>\n\/\/ Exibi\u00e7\u00e3o dos resultados<br \/>\nprintf(\u201cSoma de num1 e num2: %d\\n\u201d, soma);<br \/>\nprintf(\u201cM\u00e9dia dos n\u00fameros: %.2f\\n\u201d, media);<br \/>\nprintf(\u201cResultado da opera\u00e7\u00e3o booleana: %d\\n\u201d, resultado_bool);<\/p>\n<p>\/\/ Exibi\u00e7\u00e3o dos elementos do vetor<br \/>\nprintf(\u201cElementos do vetor: %d, %d, %d\\n\u201d, vetor[0], vetor[1], vetor[2]);<\/p>\n<p>\/\/ Exibi\u00e7\u00e3o dos elementos da matriz<br \/>\n5<br \/>\nprintf(\u201cElementos da matriz: %d, %d, %d, %d\\n\u201d, matriz[0][0], matriz[0][1], matriz[1][0],<br \/>\nmatriz[1][1]);<\/p>\n<p>\/\/ Manipula\u00e7\u00e3o e exibi\u00e7\u00e3o do ponteiro<br \/>\nprintf(\u201cValor de num1: %d\\n\u201d, *ptr_num1);<br \/>\nprintf(\u201cEndere\u00e7o de num1: %p\\n\u201d, ptr_num1);<br \/>\nprintf(\u201cEndere\u00e7o de str: %p\\n\u201d, (void*)&amp;str);<\/p>\n<p>return 0;<br \/>\n}<br \/>\nPrograma Completo:<br \/>\n#include<br \/>\n#include<br \/>\n\/\/ Defini\u00e7\u00e3o de constantes<br \/>\n#define MAX_STRING_LENGTH 50<br \/>\nconst int CONST_NUM = 100;<br \/>\nint main() {<br \/>\n\/\/ Vari\u00e1veis prim\u00e1rias<br \/>\nint num1, num2;<br \/>\nfloat num3;<br \/>\nchar str[MAX_STRING_LENGTH];<\/p>\n<p>\/\/ Vari\u00e1veis compostas<br \/>\nint vetor[3] = {1, 2, 3}; \/\/ Vetor inicializado com 3 elementos<br \/>\nint matriz[2][2] = {{1, 2}, {3, 4}}; \/\/ Matriz 2\u00d72 inicializada<\/p>\n<p>\/\/ Ponteiros<br \/>\nint *ptr_num1;<\/p>\n<p>\/\/ Atribui\u00e7\u00e3o inicial<br \/>\nnum1 = 10;<br \/>\nnum2 = 20;<br \/>\nnum3 = 15.5;<br \/>\nstrcpy(str, \u201cExemplo\u201d);<br \/>\n6<\/p>\n<p>\/\/ Atribui\u00e7\u00e3o de ponteiro<br \/>\nptr_num1 = &amp;num1;<\/p>\n<p>\/\/ Entrada do usu\u00e1rio<br \/>\nprintf(\u201cDigite um n\u00famero inteiro: \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num1);<\/p>\n<p>printf(\u201cDigite outro n\u00famero inteiro: \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num2);<\/p>\n<p>printf(\u201cDigite um n\u00famero real: \u201c);<br \/>\nscanf(\u201c%f\u201d, &amp;num3);<\/p>\n<p>printf(\u201cDigite uma string: \u201c);<br \/>\nscanf(\u201c%s\u201d, str);<\/p>\n<p>\/\/ Opera\u00e7\u00f5es matem\u00e1ticas<br \/>\nint soma = num1 + num2;<br \/>\nfloat media = (num1 + num2 + num3) \/ 3;<\/p>\n<p>\/\/ Opera\u00e7\u00f5es booleanas<br \/>\nint resultado_bool = (num1 &gt; num2) &amp;&amp; (num3 &gt; CONST_NUM);<\/p>\n<p>\/\/ Exibi\u00e7\u00e3o dos resultados<br \/>\nprintf(\u201cSoma de num1 e num2: %d\\n\u201d, soma);<br \/>\nprintf(\u201cM\u00e9dia dos n\u00fameros: %.2f\\n\u201d, media);<br \/>\nprintf(\u201cResultado da opera\u00e7\u00e3o booleana: %d\\n\u201d, resultado_bool);<\/p>\n<p>\/\/ Exibi\u00e7\u00e3o dos elementos do vetor<br \/>\nprintf(\u201cElementos do vetor: %d, %d, %d\\n\u201d, vetor[0], vetor[1], vetor[2]);<\/p>\n<p>\/\/ Exibi\u00e7\u00e3o dos elementos da matriz<br \/>\nprintf(\u201cElementos da matriz: %d, %d, %d, %d\\n\u201d, matriz[0][0], matriz[0][1], matriz[1][0],<br \/>\nmatriz[1][1]);<\/p>\n<p>\/\/ Manipula\u00e7\u00e3o e exibi\u00e7\u00e3o do ponteiro<br \/>\nprintf(\u201cValor de num1: %d\\n\u201d, *ptr_num1);<br \/>\n7<br \/>\nprintf(\u201cEndere\u00e7o de num1: %p\\n\u201d, ptr_num1);<br \/>\nprintf(\u201cEndere\u00e7o de str: %p\\n\u201d, (void*)&amp;str);<\/p>\n<p>return 0;<br \/>\n}<br \/>\nPara verificar o seu entendimento com rela\u00e7\u00e3o aos conceitos de vari\u00e1veis e opera\u00e7\u00f5es b\u00e1sicas em<br \/>\nC, desenvolva um pequeno programa em C que realize as seguintes tarefas:<br \/>\n1. Defina uma constante que represente a taxa de juros anual (por exemplo, 5%).<br \/>\n2. Declare vari\u00e1veis para armazenar o valor inicial do investimento, o n\u00famero de anos e o valor<br \/>\nfinal do investimento.<br \/>\n3. Solicite ao usu\u00e1rio que insira o valor inicial do investimento e o n\u00famero de anos.<br \/>\n4. Calcule o valor final do investimento utilizando a f\u00f3rmula de juros simples: Valor Final = Valor<br \/>\nInicial * (1 + (Taxa de Juros * Anos)).<br \/>\n5. Exiba o valor final do investimento.<br \/>\n6. Al\u00e9m disso, declare um vetor de inteiros com 3 elementos e uma matriz 2\u00d72 de inteiros.<br \/>\nInicialize-os com valores \u00e0 sua escolha.<br \/>\n7. Utilize um ponteiro para acessar e modificar o primeiro elemento do vetor.<br \/>\n8. Exiba os valores dos elementos do vetor e da matriz, bem como os endere\u00e7os de mem\u00f3ria<br \/>\nde cada elemento.<br \/>\nCHECKLIST:<br \/>\n\u2022 Incluindo Bibliotecas e Definindo Constantes<br \/>\n\u2022 Declara\u00e7\u00e3o de Vari\u00e1veis<br \/>\n\u2022 Atribui\u00e7\u00e3o Inicial<br \/>\n\u2022 Entrada do Usu\u00e1rio<br \/>\n\u2022 Opera\u00e7\u00f5es Matem\u00e1ticas e Booleanas<br \/>\n\u2022 Exibi\u00e7\u00e3o dos Resultados<br \/>\n\u2022 Resolu\u00e7\u00e3o do exerc\u00edcio proposto<br \/>\nRESULTADOS<br \/>\nPara comprovar a realiza\u00e7\u00e3o da atividade, \u00e9 necessario entregar um arquivo .c que cont\u00e9m o seu<br \/>\nc\u00f3digo da atividade.<br \/>\nRESULTADOS DE APRENDIZAGEM:<br \/>\n8<br \/>\nEspera-se que o aluno seja capaz de entender os conceitos fundamentais de constantes, vari\u00e1veis<br \/>\n(primitivas e compostas), ponteiros, opera\u00e7\u00f5es matem\u00e1ticas e booleanas em C.<br \/>\nALGORITMOS E T\u00c9CNICAS<br \/>\nDE PROGRAMA\u00c7\u00c3O<br \/>\nRoteiro<br \/>\nAula Pr\u00e1tica<br \/>\n2<br \/>\nROTEIRO DE AULA PR\u00c1TICA<br \/>\nNOME DA DISCIPLINA: ALGORITMOS E T\u00c9CNICAS DE PROGRAMA\u00c7\u00c3O<br \/>\nUnidade: 2 \u2013 ESTRUTURAS DE DECIS\u00c3O E REPETI\u00c7\u00c3O<br \/>\nAula: 3 \u2013 ESTRUTURAS DE REPETI\u00c7\u00c3O DETERMIN\u00cdSTICAS<br \/>\nOBJETIVOS<br \/>\n\u2713 Compreender a defini\u00e7\u00e3o e utiliza\u00e7\u00e3o de constantes e vari\u00e1veis em linguagens de<br \/>\nprograma\u00e7\u00e3o.<br \/>\n\u2713 Familiarizar-se com tipos de dados primitivos e compostos.<br \/>\n\u2713 Praticar opera\u00e7\u00f5es e express\u00f5es em C.<br \/>\n\u2713 Explorar o uso de ponteiros e a manipula\u00e7\u00e3o de mem\u00f3ria.<br \/>\nSOLU\u00c7\u00c3O DIGITAL<br \/>\n\u2022 Computador com um compilador C\/C++ instalado justamente com a IDE Code::Blocks.<br \/>\nLINK SOLU\u00c7\u00c3O DIGITAL (EXCETO ALGETEC): https:\/\/www.codeblocks.org\/downloads\/<br \/>\nCode::Blocks \u00e9 um ambiente de desenvolvimento integrado de c\u00f3digo aberto e multiplataforma.<br \/>\nEle foi desenvolvido em C++, usando wxWidgets. Sua arquitetura \u00e9 orientada a plugin, de forma<br \/>\nque suas funcionalidades s\u00e3o definidas pelos plugins fornecidos a ele. Code::Blocks \u00e9 voltado<br \/>\npara o desenvolvimento em C\/C++.<br \/>\nPROCEDIMENTO\/ATIVIDADE<br \/>\nATIVIDADE PROPOSTA:<br \/>\nDesenvolver um programa em C que utilize vari\u00e1veis prim\u00e1rias e compostas, ponteiros,<br \/>\nconstantes e opera\u00e7\u00f5es matem\u00e1ticas. Bem como fun\u00e7\u00f5es de exibi\u00e7\u00e3o de resultados.<br \/>\nPROCEDIMENTOS PARA A REALIZA\u00c7\u00c3O DA ATIVIDADE:<br \/>\nEXERC\u00cdCIO 1: if, else if, else<br \/>\nImplementar um programa que leia um n\u00famero inteiro e informe se ele \u00e9 positivo, negativo ou zero.<br \/>\nInstru\u00e7\u00f5es:<br \/>\nSolicitar ao usu\u00e1rio que insira um n\u00famero.<br \/>\n3<br \/>\nUsar a estrutura if, else if e else para verificar o valor do n\u00famero e imprimir a mensagem<br \/>\ncorrespondente.<br \/>\nC\u00f3digo:<br \/>\n#include<br \/>\nint main() {<br \/>\nint num;<br \/>\nprintf(\u201cDigite um n\u00famero inteiro: \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num);<br \/>\nif (num &gt; 0) {<br \/>\nprintf(\u201cO n\u00famero \u00e9 positivo.\\n\u201d);<br \/>\n} else if (num &lt; 0) { printf(&#8220;O n\u00famero \u00e9 negativo.\\n&#8221;); } else { printf(&#8220;O n\u00famero \u00e9 zero.\\n&#8221;); } return 0; } Execu\u00e7\u00e3o e Testes: Compilar e executar o programa. Testar com diferentes valores (positivo, negativo e zero). EXERC\u00cdCIO 2: for Implementar um programa que imprima os n\u00fameros de 1 a 10. Instru\u00e7\u00f5es: Usar a estrutura for para iterar de 1 a 10. Imprimir cada n\u00famero durante a itera\u00e7\u00e3o. C\u00f3digo: #include<br \/>\n4<br \/>\nint main() {<br \/>\nfor (int i = 1; i &lt;= 10; i++) { printf(&#8220;%d\\n&#8221;, i); } return 0; } Execu\u00e7\u00e3o e Testes: Compilar e executar o programa. Verificar a sequ\u00eancia de n\u00fameros impressos. EXERC\u00cdCIO 3: while Implementar um programa que leia n\u00fameros inteiros at\u00e9 que o usu\u00e1rio digite zero, e ent\u00e3o imprimir a soma desses n\u00fameros. Instru\u00e7\u00f5es: Usar a estrutura while para ler n\u00fameros at\u00e9 que o usu\u00e1rio digite zero. Manter um acumulador para somar os n\u00fameros digitados. C\u00f3digo: #include<br \/>\nint main() {<br \/>\nint num, soma = 0;<br \/>\nprintf(\u201cDigite um n\u00famero inteiro (0 para sair): \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num);<br \/>\nwhile (num != 0) {<br \/>\nsoma += num;<br \/>\nprintf(\u201cDigite um n\u00famero inteiro (0 para sair): \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num);<br \/>\n}<br \/>\nprintf(\u201cA soma dos n\u00fameros \u00e9: %d\\n\u201d, soma);<br \/>\n5<br \/>\nreturn 0;<br \/>\n}<br \/>\nExecu\u00e7\u00e3o e Testes:<br \/>\nCompilar e executar o programa.<br \/>\nTestar com diferentes sequ\u00eancias de n\u00fameros.<br \/>\nEXERC\u00cdCIO 4: do-while<br \/>\nImplementar um programa que leia um n\u00famero inteiro positivo e calcule seu fatorial.<br \/>\nInstru\u00e7\u00f5es:<br \/>\nSolicitar ao usu\u00e1rio que insira um n\u00famero inteiro positivo.<br \/>\nUsar a estrutura do-while para calcular o fatorial do n\u00famero.<br \/>\nC\u00f3digo:<br \/>\n#include<br \/>\nint main() {<br \/>\nint num, fatorial = 1;<br \/>\nprintf(\u201cDigite um n\u00famero inteiro positivo: \u201c);<br \/>\nscanf(\u201c%d\u201d, &amp;num);<br \/>\nif (num &lt; 0) { printf(&#8220;N\u00famero inv\u00e1lido.\\n&#8221;); } else { int i = num; do { fatorial *= i; i&#8211;; } while (i &gt; 0);<br \/>\nprintf(\u201cO fatorial de %d \u00e9: %d\\n\u201d, num, fatorial);<br \/>\n}<br \/>\nreturn 0;<br \/>\n6<br \/>\n}<br \/>\nExecu\u00e7\u00e3o e Testes:<br \/>\nCompilar e executar o programa.<br \/>\nTestar com diferentes valores positivos.<br \/>\nPara verificar o seu entendimento com rela\u00e7\u00e3o aos conceitos de estruturas condicionais e de<br \/>\nrepeti\u00e7\u00e3o, desenvolva um programa em C que leia notas de alunos, calcule a m\u00e9dia, identifique a<br \/>\nmaior e menor nota, conte quantos alunos passaram (nota \u2265 6) e quantos n\u00e3o passaram (nota &lt; 6). Estrutura do programa: Estrutura do Programa: 1. Declara\u00e7\u00e3o de vari\u00e1veis. 2. Leitura das notas dos alunos usando um loop (while). 3. C\u00e1lculo da m\u00e9dia das notas. 4. Identifica\u00e7\u00e3o da maior e menor nota usando estruturas condicionais (if). 5. Contagem dos alunos que passaram e n\u00e3o passaram. 6. Impress\u00e3o dos resultados. 7. Testar o Programa: Inserir diferentes notas para verificar se o programa calcula corretamente a m\u00e9dia, maior e menor nota, e a contagem de alunos que passaram e n\u00e3o passaram. Testar com notas inv\u00e1lidas para garantir que o programa trate essas entradas corretamente. Testar a finaliza\u00e7\u00e3o do programa ao digitar -1.<\/p>\n<p>CHECKLIST: \u2022 If-else \u2022 for \u2022 while \u2022 do-while<\/p>\n<p>RESULTADOS Para comprovar a realiza\u00e7\u00e3o da atividade, \u00e9 necessario entregar um arquivo .c que cont\u00e9m o seu c\u00f3digo da atividade.<\/p>\n<p>RESULTADOS DE APRENDIZAGEM: Espera-se que o aluno seja capaz de entender os conceitos fundamentais de estruturas condicionais (if, else if, else) e de repeti\u00e7\u00e3o (while, do-while, for) por meio de pr\u00e1ticas com leitura 7 de dados, c\u00e1lculos b\u00e1sicos, e a tomada de decis\u00f5es com base em condi\u00e7\u00f5es, consolidando os conhecimentos adquiridos durante a aula.<\/p>\n<p>ALGORITMOS E T\u00c9CNICAS DE PROGRAMA\u00c7\u00c3O<\/p>\n<p><strong>Roteiro Aula Pr\u00e1tica 2 ROTEIRO DE AULA PR\u00c1TICA NOME DA DISCIPLINA: ALGORITMOS E T\u00c9CNICAS DE PROGRAMA\u00c7\u00c3O <\/strong><\/p>\n<p><strong>Unidade: 2 \u2013 FUN\u00c7\u00d5ES E RECURSIVIDADE <\/strong><\/p>\n<p><strong>Aula: 3 \u2013 RECURSIVIDADE OBJETIVOS <\/strong><\/p>\n<p>\u2713 Praticar a defini\u00e7\u00e3o de algoritmos recursivos, implementar fun\u00e7\u00f5es recursivas em cauda, e comparar a efici\u00eancia entre estes dois tipos de recursividade. SOLU\u00c7\u00c3O DIGITAL \u2022 Computador com um compilador C\/C++ instalado justamente com a IDE Code::Blocks. LINK SOLU\u00c7\u00c3O DIGITAL (EXCETO ALGETEC): https:\/\/www.codeblocks.org\/downloads\/ Code::Blocks \u00e9 um ambiente de desenvolvimento integrado de c\u00f3digo aberto e multiplataforma. Ele foi desenvolvido em C++, usando wxWidgets. Sua arquitetura \u00e9 orientada a plugin, de forma que suas funcionalidades s\u00e3o definidas pelos plugins fornecidos a ele. Code::Blocks \u00e9 voltado para o desenvolvimento em C\/C++. PROCEDIMENTO\/ATIVIDADE ATIVIDADE PROPOSTA: Desenvolver um programa que implementa e compara dois tipos de fun\u00e7\u00f5es recursivas para calcular o n-\u00e9simo n\u00famero da sequ\u00eancia de Fibonacci. PROCEDIMENTOS PARA A REALIZA\u00c7\u00c3O DA ATIVIDADE:<\/p>\n<p>Etapa 1: Defini\u00e7\u00e3o de Fun\u00e7\u00e3o Recursiva Simples Implemente uma fun\u00e7\u00e3o recursiva para calcular o n-\u00e9simo n\u00famero da sequ\u00eancia de Fibonacci.<\/p>\n<p>Etapa 2: Defini\u00e7\u00e3o de Fun\u00e7\u00e3o Recursiva em Cauda Implemente a fun\u00e7\u00e3o Fibonacci utilizando recursividade em cauda.<\/p>\n<p>Etapa 3: Compara\u00e7\u00e3o entre Fun\u00e7\u00e3o Recursiva Simples e Recursiva em Cauda Implemente um programa que utilize as fun\u00e7\u00f5es recursivas para calcular e comparar os tempos de execu\u00e7\u00e3o para diferentes valores de n.<\/p>\n<p>Etapa 4: Discuss\u00e3o sobre Efici\u00eancia Escreva uma an\u00e1lise dos resultados que obteve ao comparar a fun\u00e7\u00e3o Fibonacci recursiva simples com a fun\u00e7\u00e3o Fibonacci recursiva em cauda em termos de efici\u00eancia e desempenho.<\/p>\n<p>CHECKLIST: \u2022 Defini\u00e7\u00e3o de Fun\u00e7\u00e3o Recursiva Simples \u2022 Defini\u00e7\u00e3o de Fun\u00e7\u00e3o Recursiva em Cauda \u2022 Compara\u00e7\u00e3o entre Fun\u00e7\u00e3o Recursiva Simples e Recursiva em Cauda \u2022 Discuss\u00e3o sobre Efici\u00eancia<\/p>\n<p>RESULTADOS Para comprovar a realiza\u00e7\u00e3o da atividade, \u00e9 necessario entregar um arquivo .c que cont\u00e9m o seu c\u00f3digo da atividade e um arquivo em pdf com a an\u00e1lise dos resultados.<\/p>\n<p>RESULTADOS DE APRENDIZAGEM: Espera-se que o aluno seja capaz de entender os conceitos fundamentais de recursividade e como as diferentes formas de implement\u00e1-la afetam o desempenho Aula Pr\u00e1tica Algoritmos e T\u00e9cnicas de Programa\u00e7\u00e3o<\/p>\n<\/div>\n<\/div>\n<div class=\"elementor-element elementor-element-edbea74 elementor-widget elementor-widget-woocommerce-product-short-description\" data-id=\"edbea74\" data-element_type=\"widget\" data-widget_type=\"woocommerce-product-short-description.default\">\n<div class=\"elementor-widget-container\">\n<div class=\"woocommerce-product-details__short-description\">\n<div class=\"elementor-toggle-item\">\n<p id=\"elementor-tab-title-1941\" class=\"elementor-tab-title elementor-active\" tabindex=\"0\" role=\"tab\" data-tab=\"1\" aria-controls=\"elementor-tab-content-1941\" aria-expanded=\"true\" aria-selected=\"true\"><strong>Como funciona?<\/strong><\/p>\n<p>Elaboramos os portf\u00f3lios, j\u00e1 deixamos prontos, nas normas da ABNT e conforme os requisitos da universidade. F\u00e1cil assim! O MELHOR \u00c9 QUE VOC\u00ca COMPRA E J\u00c1 BAIXA NA HORA O SEU ARQUIVO EM WORD! Sabemos que conciliar trabalho, fam\u00edlia, vida profissional e estudos \u00e9 dif\u00edcil hoje em dia, por isso, estamos aqui para ajudar voc\u00ea. Conte com nossa qualidade, experi\u00eancia e profissionalismo adquirindo seu portf\u00f3lio conosco. GARANTIMOS SEU CONCEITO!<\/p>\n<p><strong>Como se realizam os envios?<\/strong><\/p>\n<\/div>\n<p id=\"elementor-tab-content-1942\" class=\"elementor-tab-content elementor-clearfix elementor-active\" role=\"tabpanel\" data-tab=\"2\" aria-labelledby=\"elementor-tab-title-1942\">O seu trabalho \u00e9 disponibilizado pronto, respondido e nas normas j\u00e1 na mesma hora aqui em nosso site na sua \u00e1rea de downloads e tamb\u00e9m no seu e-mail.<\/p>\n<p><strong>Em quanto tempo recebo o portf\u00f3lio?<\/strong><\/p>\n<p>Os envios s\u00e3o imediatos. Ap\u00f3s sua compra, o trabalho j\u00e1 \u00e9 disponibilizado instantaneamente aqui em nosso site e no seu e-mail.<\/p>\n<p><strong>E se o portf\u00f3lio que comprei precisar de corre\u00e7\u00e3o?<\/strong><\/p>\n<p>Caso haja alguma solicita\u00e7\u00e3o de corre\u00e7\u00e3o\/altera\u00e7\u00e3o por parte do tutor, basta entrar em contato conosco pelo\u00a0WhatsApp\u00a0que provid\u00eanciaremos sem custo algum.<\/p>\n<p><strong>Qual o formato do arquivo?<\/strong><\/p>\n<p>Os arquivos s\u00e3o enviados em formato Word e s\u00e3o edit\u00e1veis.<\/p>\n<p><strong>Caso eu tiver alguma d\u00favida, terei suporte no p\u00f3s venda?<\/strong><\/p>\n<p>Sim, com certeza. Basta clicar no \u00edcone do WhatsApp no cantinho da tela. Ser\u00e1 um prazer atend\u00ea-lo(a).<\/p>\n<div id=\"elementor-tab-content-1948\" class=\"elementor-tab-content elementor-clearfix elementor-active\" role=\"tabpanel\" data-tab=\"8\" aria-labelledby=\"elementor-tab-title-1948\">\n<p><strong>Quais os seus canais de contato?<\/strong><\/p>\n<\/div>\n<div id=\"elementor-tab-content-1949\" class=\"elementor-tab-content elementor-clearfix elementor-active\" role=\"tabpanel\" data-tab=\"9\" aria-labelledby=\"elementor-tab-title-1949\">\n<p>Whatsapp: 53 984751621 \u2013 Clicar no canto da tela ou ESCANEIE O QRCODE ABAIXO<\/p>\n<h4><img decoding=\"async\" class=\"alignnone wp-image-13699 jetpack-lazy-image jetpack-lazy-image--handled\" src=\"https:\/\/i0.wp.com\/portifolioos-prontos.com\/wp-content\/uploads\/2023\/02\/whatsapp-business-projeto-de-extensao-300x300.jpeg?resize=144%2C144\" sizes=\"(max-width: 144px) 100vw, 144px\" srcset=\"https:\/\/i0.wp.com\/portifolioos-prontos.com\/wp-content\/uploads\/2023\/02\/whatsapp-business-projeto-de-extensao.jpeg?resize=300%2C301&amp;ssl=1 300w, https:\/\/i0.wp.com\/portifolioos-prontos.com\/wp-content\/uploads\/2023\/02\/whatsapp-business-projeto-de-extensao.jpeg?resize=150%2C150&amp;ssl=1 150w, https:\/\/i0.wp.com\/portifolioos-prontos.com\/wp-content\/uploads\/2023\/02\/whatsapp-business-projeto-de-extensao.jpeg?resize=370%2C372&amp;ssl=1 370w, https:\/\/i0.wp.com\/portifolioos-prontos.com\/wp-content\/uploads\/2023\/02\/whatsapp-business-projeto-de-extensao.jpeg?resize=100%2C100&amp;ssl=1 100w, https:\/\/i0.wp.com\/portifolioos-prontos.com\/wp-content\/uploads\/2023\/02\/whatsapp-business-projeto-de-extensao.jpeg?w=470&amp;ssl=1 470w\" alt=\"projeto de extens\u00e3o unopar\" width=\"144\" height=\"144\" data-lazy-loaded=\"1\" \/><\/h4>\n<\/div>\n<div class=\"elementor-toggle-item\">\n<div id=\"elementor-tab-content-1949\" class=\"elementor-tab-content elementor-clearfix elementor-active\" role=\"tabpanel\" data-tab=\"9\" aria-labelledby=\"elementor-tab-title-1949\">\n<p>E-mail:portifoliosp@gmail.com<\/p>\n<div id=\"attachment_143\" class=\"wp-caption alignnone\">\n<div id=\"attachment_143\" class=\"wp-caption alignnone\">\n<p id=\"caption-attachment-143\" class=\"wp-caption-text\"><a href=\"http:\/\/portfolio-pronto.com\/\">Portf\u00f3lio<\/a>\u00a0em Word, respondido, completo e j\u00e1 nas normas<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<div class=\"product-short-description\"><strong>Pague pelo PIX ou cart\u00e3o e fa\u00e7a o download agora mesmo.<\/strong><\/div>\n<div class=\"sticky-add-to-cart-wrapper\">\n<div class=\"sticky-add-to-cart\">\n<p class=\"quantity buttons_added form-flat\"><img decoding=\"async\" class=\"lazyloaded smush-image-5 smush-image-3 smush-image-4 smush-detected-img smush-image-bigger-3\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/visa@2x.png\" width=\"46\" height=\"29\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/visa@2x.png\" \/><img decoding=\"async\" class=\"lazyloaded smush-image-6 smush-image-4 smush-image-5 smush-detected-img smush-image-bigger-4\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/boleto@2x.png\" width=\"43\" height=\"27\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/boleto@2x.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"lazyloaded smush-image-7 smush-image-5 smush-image-6 smush-detected-img smush-image-bigger-5\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/mastercard@2x.png\" width=\"43\" height=\"27\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/mastercard@2x.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"lazyloaded smush-image-8 smush-image-6 smush-image-7 smush-detected-img smush-image-bigger-6\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/amex@2x.png\" width=\"43\" height=\"27\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/amex@2x.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"lazyloaded smush-image-9 smush-image-7 smush-image-8 smush-detected-img smush-image-bigger-7\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/diners@2x.png\" width=\"46\" height=\"29\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/diners@2x.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"lazyloaded smush-image-10 smush-image-8 smush-image-9 alignnone smush-detected-img smush-image-bigger-8\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/br\/elo@2x.png\" alt=\"portf\u00f3lio unopar anhanguera\" width=\"45\" height=\"28\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/br\/elo@2x.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"lazyloaded smush-image-11 smush-image-9 smush-image-10 alignnone smush-detected-img smush-image-bigger-9\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/br\/hipercard@2x.png\" alt=\"portf\u00f3lio unopar anhanguera\" width=\"44\" height=\"28\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/br\/hipercard@2x.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"lazyloaded smush-image-12 smush-image-10 smush-image-11 alignnone smush-detected-img smush-image-bigger-10\" src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/mercadopago@2x.png\" alt=\"portf\u00f3lio unopar anhanguera\" width=\"45\" height=\"28\" data-src=\"https:\/\/d26lpennugtm8s.cloudfront.net\/assets\/common\/img\/logos\/payment\/mercadopago@2x.png\" \/><img loading=\"lazy\" decoding=\"async\" class=\"alignnone ls-is-cached lazyloaded smush-detected-img smush-image-bigger-11\" src=\"https:\/\/futurium.com.br\/wp-content\/uploads\/2021\/06\/logo-pix-icone-512.png\" alt=\"portfolio pronto\" width=\"30\" height=\"30\" data-src=\"https:\/\/futurium.com.br\/wp-content\/uploads\/2021\/06\/logo-pix-icone-512.png\" \/><\/p>\n<\/div>\n<\/div>\n","protected":false},"featured_media":45096,"template":"","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":""},"product_cat":[15],"product_tag":[752,750,767],"class_list":{"0":"post-45095","1":"product","2":"type-product","3":"status-publish","4":"has-post-thumbnail","6":"product_cat-uncategorized","7":"product_tag-portfolio-de-aula-pratica-anhanguera","8":"product_tag-portfolio-de-aula-pratica-unopar","9":"product_tag-portfolio-de-aula-pratica-unopar-e-anhanguera","11":"first","12":"instock","13":"downloadable","14":"virtual","15":"purchasable","16":"product-type-simple","17":"col-xs-6 col-sm-4","18":"col-mf-5","19":"un-5-cols"},"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/product\/45095","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/types\/product"}],"version-history":[{"count":1,"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/product\/45095\/revisions"}],"predecessor-version":[{"id":45097,"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/product\/45095\/revisions\/45097"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/media\/45096"}],"wp:attachment":[{"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/media?parent=45095"}],"wp:term":[{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/product_cat?post=45095"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/portifolioos-prontos.com\/index.php\/wp-json\/wp\/v2\/product_tag?post=45095"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}