Existem ótimos exemplos de utilização de Pilhas em nosso cotidiano, nos brinquedos usados em sala de aula ou até mesmo numa simples pilha de livros, onde é possível se determinar qual o algoritmo (critério) utilizado para empilhá-los: tamanho, grossura, cor, tema, etc.. Muitos professores usam estas artimanhas a fim de que os alunos possam desenvolver o raciocínio lógico.
Pensando nisso, um programador desenvolveu o código abaixo, para que os professores possam informar a quantidade de discos e o sistema informasse a quantidade total de movimentos que serão realizados. Com esse algoritmo, eles poderiam criar gincanas e desafios entre os alunos para resolverem a ferramenta lógica que eles usam em sala de aula, com um número maior de discos.
Abaixo apresenta-se o código desenvolvido pelo programador mencionado.
#include
#include
int contador = 0;
void algoritmo(int n, char a, char b, char c)
{
if (n == 1)
{
printf("Move o disco %d de %c para %c\n", n, a, b);
contador++;
} else
{
algoritmo(n - 1, a, c, b);
printf("Move o disco %d de %c para %c\n", n, a, b);
algoritmo(n - 1, c, b, a);
contador++;
}
}
int main(void)
{
int numDiscos;
printf("Informe o numero de discos: ");
scanf("%d", &numDiscos);
algoritmo(numDiscos, 'A', 'B', 'C');
printf("\n\nA quantidade de movimentos foi: %d", contador);
return 0;
}
Sobre o algoritmo apresentado acima, analise as seguintes afirmações:
I - O Algoritmo trata-se da solução da Torre de Hanói.
II - Para o desenvolvimento deste algoritmo foi necessário o uso da recursividade assim como o uso de Pilhas.
III - Foi necessário, um contador para realizar a contagem da quantidade de movimento.
IV - O algoritmo limita o numero de pilhas informadas em 10 unidades.
Agora, assinale a alternativa correta.
Alternativas:
a)
Apenas as afirmativas I, III e IV estão corretas.
b)
Apenas as alternativas I, II e III são corretas.
c)
Apenas as afirmativas I e III estão corretas.
d)
Apenas as afirmativas I, II e IV estão corretas.
e)
Apenas as afirmativas II, III e IV estão corretas.
Soluções para a tarefa
Respondido por
0
Resposta:
b)Apenas as alternativas I, II e III são corretas.
Explicação:
Respondido por
0
Resposta:
Apenas as alternativas I, II e III são corretas. Correto
Explicação:
Perguntas interessantes
Física,
4 meses atrás
História,
4 meses atrás
Matemática,
5 meses atrás
Matemática,
5 meses atrás
Saúde,
10 meses atrás
Inglês,
10 meses atrás
Artes,
10 meses atrás