PERGUNTA 4
Analise o trecho de código abaixo e escolha a alternativa que exibe a saída do programa:
Pilha P = new Pilha();
Fila F = new Fila();
ListaOrd L = new ListaOrd();
for(int i=5; i<13; i+=3) {
F.enqueue(i-1);
P.push(i);
}
while(!F.isEmpty())
L.ins(F.dequeue());
while(!P.isEmpty())
L.ins(P.pop());
L.print();
a.
4, 5, 7, 8, 10, 11
b.
4, 7, 10, 5, 8, 11
c.
5, 8, 11, 4, 7, 10
d.
11, 10, 8, 4, 5, 7
e.
11, 10, 8, 7, 4, 5
Soluções para a tarefa
Analisando o trecho de código a alternativa que exibe a saída do programa é a letra a: 4,5,7,8,10,11.
Estruturas de dados
Listas, pilhas e filas são estruturas de dados usados na programação com diversas aplicações diferentes. Cada uma possui uma especificidade e é recomendado em usos diferentes.
- Lista: é um conjunto de dados dispostos e/ou acessáveis em uma determinada sequência.
- Fila: estrutura de dados do tipo FIFO (First In First Out) que significa primeiro a entrar primeiro a sair, dessa forma, o elemento que entra primeiro é o único que pode ser acessado nessa lista.
- Pilha: estrutura de dado do tipo FILO (First In Last Out) que indica que só o último elemento pode ser acessado, tendo que acessar a partir do topo até o primeiro.
Dessa forma, analisando o código temos que no trecho de código:
- for(int i=5; i<13; i+=3) {
- F.enqueue(i-1);
- P.push(i);
- }
É usado uma estrutura de repetição para inserir na fila os valores 4, 7, 10, isso porque a repetição começa no 5 e anda de 3 em 3 enquanto for menor que 13 e como inserido i - 1 na fila, logo 4, 7 e 10. Esse estrutura também é usada para inserir na pilha os valores 5, 8 e 11 pois é inserido na pilha o valor de i, logo os valores que i assume durante a repetição são esses.
- while(!F.isEmpty())
- L.ins(F.dequeue());
Nesse trecho de código é esvaziada a fila e inserida dentro da lista, portanto, é inserido na lista os valores: 4, 7, 10.
- while(!P.isEmpty())
- L.ins(P.pop());
Já neste trecho, é desempilhado os valores da pilha e inseridos diretos na lista. Sendo assim, a lista passa a conter também os valores: 5, 8, 11.
- L.print();
Como a lista é ordenada, vamos assumir que toda vez que um número é inserido é realizado também a ordenação da lista, logo, ao imprimir a lista na tela teremos o resultado: 4, 5, 7, 8, 10, 11.
Mais exercícios sobre estrutura de dados em:
https://brainly.com.br/tarefa/52670462
https://brainly.com.br/tarefa/26918121
#SPJ2