Implemente um projeto no qual serão inseridos números de forma ordenada, e que atenda as especificações a seguir:
Passo 1: Insira os números [1, 2, 3, 4 e 5] em uma lista - com 5 células;
Passo 2: Remova todos os dados da lista e insira-os em uma Pilha - com 5 células. Deve-se sempre remover os dados da célula inicial da lista;
Passo 3: Remova os dados da Pilha e insira-os em uma Fila - com 10 células);
Passo 4: Insira os números [6, 7, 8, 9 e 10] na lista;
Passo 5: Repita os passos 2 e 3.
Passo 6: Exiba todos os números que foram inseridos na fila.
Analise a ordem dos números exibidos e verifique se estão na mesma forma que foram inseridos. Se a exibição foi diferente, justifique o ocorrido.
O programa desenvolvido pelo aluno e a sua justificativa deverá ser postado em um ambiente virtual. Esse programa será avaliado pelo tutor responsável pela disciplina.
Soluções para a tarefa
Resposta:
import java.util.*;
public class Main {
@SuppressWarnings("empty-statement")
public static void main(String[] args) {
ArrayList lista = new ArrayList<>(5);
System.out.println("Passo 1: Insira os números [1, 2, 3, 4 e 5] em uma LISTA - com 5 células;");
for (int i=1;i<=5;i++){
lista.add(i);
}
System.out.println(lista);
System.out.println("--------------------------------------------");
System.out.println("Passo 2: Remova todos os dados da LISTA");
System.out.println("Deve-se sempre remover os dados da célula inicial da lista");
while(!lista.isEmpty()) {
lista.remove(0);
System.out.println(lista);
}
System.out.println("--------------------------------------------");
System.out.println("Passo 2: insira-os em uma PILHA - com 5 células");
Stack<Integer> pilha = new Stack<Integer>();
for (int i=1;i<=5;i++){
pilha.push(i);
}
System.out.println(pilha);
System.out.println("--------------------------------------------");
System.out.println("Passo 3: Remove os dados da PILHA");
pilha.clear();
System.out.println(pilha);
System.out.println("--------------------------------------------");
System.out.println("Passo 3: insira-os em uma FILA - com 10 células)");
ArrayDeque fila = new ArrayDeque<>(10);
for (int i=1;i<=5;i++){
fila.push(i);
}
System.out.println(fila);
System.out.println("--------------------------------------------");
System.out.println("Passo 4: Insira os números [6, 7, 8, 9 e 10] na LISTA");
for (int i=6;i<=10;i++){
lista.add(i);
}
System.out.println(lista);
System.out.println("--------------------------------------------");
System.out.println("Passo 5: Repita os passos 2 e 3");
System.out.println("Passo 2: Remova todos os dados da LISTA");
System.out.println("Deve-se sempre remover os dados da célula inicial da lista");
while(!lista.isEmpty()) {
lista.remove(0);
System.out.println(lista);
}
System.out.println("--------------------------------------------");
System.out.println("Passo 2: insira-os em uma PILHA - com 5 células");
for (int i=6;i<=10;i++){
pilha.push(i);
}
System.out.println(pilha);
System.out.println("--------------------------------------------");
System.out.println("Passo 3: Remove os dados da PILHA");
pilha.clear();
System.out.println(pilha);
System.out.println("--------------------------------------------");
System.out.println("Passo 3: insira-os em uma FILA - com 10 células)");
for (int i=6;i<=10;i++){
fila.push(i);
}
System.out.println("Passo 6: Exiba todos os números que foram inseridos na FILA");
System.out.println(fila);
System.out.println("--------------------------------------------");
}
}
Resposta:
ArrayList<Integer> lista = new ArrayList<>(5);
System.out.println("Inserindo os numeros 1,2,3,4,5 na lista");
lista.add(1);
lista.add(2);
lista.add(3);
lista.add(4);
lista.add(5);
System.out.println(lista);
System.out.println("--------------------------------------------");
System.out.println("Removendo os dados da celula inicial da lista");
while(!lista.isEmpty()) {
int elemento = lista.remove(0);
System.out.println(lista);
}
System.out.println("Lista vazia!");
System.out.println("--------------------------------------------");
System.out.println("Inserindo os dados da lista na pilha");
ArrayDeque<Integer> pilha = new ArrayDeque<>(5);
pilha.push(1);
pilha.push(2);
pilha.push(3);
pilha.push(4);
pilha.push(5);
System.out.println(pilha);
System.out.println("--------------------------------------------");
System.out.println("Remove os dados da pilha");
pilha.clear();
System.out.println(pilha);
System.out.println("--------------------------------------------");
while(!pilha.isEmpty()) {
int elemento = pilha.pop();
System.out.println(pilha);
}
System.out.println("Inserindo os dados da pilha na fila");
ArrayDeque<Integer> fila = new ArrayDeque<>(10);
fila.add(1);
fila.add(2);
fila.add(3);
fila.add(4);
fila.add(5);
fila.add(0);
fila.add(0);
fila.add(0);
fila.add(0);
fila.add(0);
System.out.println(fila);
System.out.println("--------------------------------------------");
System.out.println("Adicionando os numeros 6,7,8,9,10 na lista");
lista.add(6);
lista.add(7);
lista.add(8);
lista.add(9);
lista.add(10);
System.out.println(lista);
System.out.println("--------------------------------------------");
System.out.println("Removendo os dados das celulas iniciais da lista");
while(!lista.isEmpty()) {
int elemento = lista.remove(0);
System.out.println(lista);
}
System.out.println("Lista vazia!");
System.out.println("--------------------------------------------");
System.out.println("Inserindo os dados da lista na pilha");
pilha.push(6);
pilha.push(7);
pilha.push(8);
pilha.push(9);
pilha.push(10);
System.out.println(pilha);
System.out.println("--------------------------------------------");
System.out.println("Removendo os dados da pilha");
pilha.clear();
System.out.println(pilha);
System.out.println("--------------------------------------------");
System.out.println("inserindo os dados da pilha na fila");
fila.add(0);
fila.add(0);
fila.add(0);
fila.add(0);
fila.add(0);
fila.add(6);
fila.add(7);
fila.add(8);
fila.add(9);
fila.add(10);
System.out.println(fila);
}
}