Atividade - QUESTÃO 1
Replicar código fonte de maneira desregulada, além de deselegante, pode tornar o código ineficiente e dificultar em muito a manutenção de um algoritmo. Por isso, é comum a utilização de estruturas de repetição.
LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de Programação I. Maringá: Unicesumar, 2020.
Conhecendo as sintaxes de declaração dos comandos "para" e "enquanto", identifique quais são as semelhanças entre os dois comandos, ou seja, aponte quais elementos algorítmicos são comuns aos dois comandos. Dê um exemplo de problema que poderia ser solucionado tanto com o "para" quanto com o "enquanto".
Resposta:
..................................................
Atividade - QUESTÃO 2
Um algoritmo nada mais é do que uma sequência de instruções para solucionar determinado problema. Se pararmos um pouco para pensar, encontramos uma série de problemas no nosso dia-a-dia e que são possíveis de solução através de simples algoritmos. Porém, sabemos que a construção de algoritmos requer muita prática, sendo assim, a cada algoritmo finalizado teremos treinado um pouco mais nossa lógica.
Consideração o texto acima e levando-se em consideração a sequência de passos usada na construção de um algoritmo, analise as afirmações abaixo:
I – É possível escrever um algoritmo por completo mesmo sem saber, através do enunciado, qual é a saída que esse algoritmo deve produzir.
II – O primeiro passo é compreender o problema, interpretar o texto.
III – A definição das entradas que o algoritmo necessita ocorre após a compreensão do problema.
IV – A definição do passo a passo de processamento é um processo pode ser validado através do teste de mesa.
É correto o que se afirma em:
Alternativa 1: Alternativa 3:
I e III, apenas. I e IV, apenas.
Alternativa 2: Alternativa 4:
II e III, apenas. II, III e IV, apenas.
Alternativa 5:
I, II, III e IV.
Atividade - QUESTÃO 3
Um objeto é dito recursivo se ele for definido em termos de si próprio. Destaca-se que o conceito de recursão não é encontrado somente na programação mas também na matemática e no dia a dia como, por exemplo, quando vemos uma imagem que contém a si própria.
LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de Programação I. Maringá: Unicesumar, 2020.
Assim, considere o seguinte trecho de pseudocódigo do algoritmo fatRec, abaixo, cujo propósito é calcular e exibir, na tela, o fatorial de 5.
01 - Algoritmo fatRec
02 - Funcao fat(x: inteiro): inteiro
03 - Início
04 - Se (________) então
05 - retorne 1
06 - Senão
07 - retorne x * __________
08 - Fim_se
09 - Fim_funcao
10 - Var n, resultado: inteiro
11 - Início
12 - n <- 5
13 - ______________ <- fat(n)
14 - escreva(resultad0)
15 – Fim
Com base em suas habilidades no desenvolvimento e compreensão de algoritmos, assinale a alternativa que melhor se adequa à realidade e ao propósito do algoritmo fatRec apresentado acima.
Alternativas
Alternativa 1:
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 1", "fat(x)" e "n", respectivamente.
Alternativa 2:
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 1", "fat(x-1)" e "n", respectivamente.
Alternativa 3:
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 1", "fat(x)" e "resultado", respectivamente.
Alternativa 4:
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 0", "fat(x-1)" e "resultado", respectivamente.
Alternativa 5:
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "fat(x) = 0", "fat(x)" e "resultado", respectivamente.
Soluções para a tarefa
1 ) tanto o Para quanto o Enquanto são elementos de repetição que podem rodar em cima de um contador (com início e fim determinado) ou que podem rodar de forma livre e ilimitada (gerando um loop infinito).
2 ) Alternativa 5: todas as afirmativas são corretas.
O resultado final gerado pelo algoritmo não precisa ser conhecido (mas conhecer este valor ajuda a verificar se o algoritmo foi corretamente construído).
Para a construção do algoritmo, precisamos apenas dos dados de entrada e dos procedimentos (como trabalhar com os dados de entrada)
Mas só podemos definir quais são os dados de entrada depois de compreender o problema.
3 ) Alternativa 4. Fat(0) tem que ser 1. além disso, a cada nova chamada devems ter fat(x-1) para de fato ter um fatorial (e uma recursão).
Desta forma teremos fat(x)*fat(x-1)*fat(x-2)*....*fat(x-x)*