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.
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".
Soluções para a tarefa
Resposta:
Tanto while(enquanto) quanto for(para) são estruturas ou laços de repetição. Ambos tem a mesma finalidade. Laços de repetição Laços de repetição, servem para que uma determinada rotina seja repetida enquanto uma determinada condição estiver sendo atingida
Segue esse fluxograma anexado a baixo
O fluxograma acima poderia, também, ser explicado de outra forma:
1 - Inicio do programa.
2 - var Contagem = 0;
3 - Contagem = Contagem +1;
4 - Exibir o valor de Contagem
5 - Se Contagem < 10, então retorne à linha 3 e faça tudo novamente. Caso seja 10 ou mais, ir para a linha 6
6 - Fim do programa
O resultado do programa pensando acima seria uma tela com a contagem, 1 a 9. Laços de repetição são estruturas lógicas que "aprisionam" a execução do programa dando voltas em um mesmo lugar até que certa condição deixe de ser verdadeira. Em outras palavras os laços de repetição são loops temporários que atuam enquanto uma condição for verdadeira quando a condição passa a ser falsa o loop é encerrado.
Um exemplo abaixo com JS(Javascript) de problema que pode ser resolvido tanto com for quanto while.
Neste exemplo temos um array e utilizaremos ambas as estruturas para gerar uma lista com os elementos que estão dentro desse array,
const MaterialEscolar = [
'Caderno',
'Lápis',
'Borracha',
'Tesoura',
'Régua',
'Caneta',
'Corretivo Líquido',
]
for (let index = 0; index < MaterialEscolar.length; index++) {
console.log(`${index+1}. ${MaterialEscolar[index]}`)
}
// Agora com While
let Index = 0;
while (Index < MaterialEscolar.length) {
console.log(`${Index + 1}. ${MaterialEscolar[Index]}`)
Index++
}
De forma simples, os comandos "para" e "enquanto" são estruturas de repetição que permitem a execução de uma mesma tarefa múltiplas vezes. Tem em comum a verificação da continuidade do processo por uma expressão lógica e também a necessidade de uma variável de iteração.
Ao passo que o comando para (for, em inglês) necessita de um número fixo de vezes informado pelo usuário para a iteração, o comando enquanto (while, em inglês) dá a possibilidade de estabelecer uma rotina de repetição onde não é possível determinar o número de vezes a repetir uma mesma tarefa. Vários são os exemplos onde o uso de um ou de outro comando é mais útil.
É importante mencionar que tudo o que pode ser feito com uma estrutura de repetição com contador também pode ser feito com uma estrutura de repetição sem contador. A escolha, então, de um ou outro está ligado à eficiência.
As estruturas de repetição com contador podem ser otimizadas para executar mais rapidamente nos computadores. Além disso, para problemas com necessidade de contadores, a estrutura com contador proporciona um algoritmo mais simples.
Um exemplo de problema para mostrar o uso das duas estruturas é mostrado a seguir.
Seja um jogo onde onde os candidatos têm de responder a várias perguntas. Toda vez que uma resposta errada é dada, a pergunta é refeita. Quando a resposta certa é dada, o jogo passa para a próxima pergunta. Ganha quem terminar as perguntas em menos tempo.
No nosso exemplo, simularemos apenas uma pergunta. Enquanto a resposta for errada, o algoritmo exigirá uma outra resposta. Quando a resposta certa for inserida, o algoritmo informará que a resposta está certa e encerrará sua execução. A primeira rotina mostra o exemplo com o uso do comando "enquanto" e a segunda, com o comando "para".
Algoritmo testeEnquanto()
Início
Real x
Imprimir "Digite o valor do perímetro de um quadrado de lado 2"
Ler x
Enquanto (x!=8) Faça
Imprimir "Resposta incorreta. Tente novamente!"
Ler x
Fim Enquanto
Imprimir "Resposta correta!"
Fim
Algoritmo testepara()
Início
Real x
Imprimir "Digite o valor do perímetro de um quadrado de lado 2"
Ler x
Para (n=1; n<2; i++) Faça
Se (x = 8) Então
Imprimir "Resposta correta!"
Senão
Imprimir "Resposta incorreta. Tente novamente!"
Ler x
n = n - 1
Fim Se
Fim Para
Fim
Veja também:
https://brainly.com.br/tarefa/23936048
https://brainly.com.br/tarefa/21884966
https://brainly.com.br/tarefa/19283001