TRABALHO DE LABORÁTÓRIO DE ESTRUTURA DE DADOS
Por: Leila Barros • 9/11/2021 • Projeto de pesquisa • 269 Palavras (2 Páginas) • 162 Visualizações
UNIVERSIDADE PAULISTA BACHARELADO EM SISTEMA DE INFORMAÇÃO
LEILA DE OLIVEIRA BARROS F2727F-7
SI4P07
TRABALHO DE LABORÁTÓRIO DE ESTRUTURA DE DADOS
SÃO PAULO – SP 2021
Atividade 2
Ao chegar a uma agencia bancária o cliente se depara com um tótem que possui dois botões: "Prioritário" e "Demais Clientes". Por trás deste dispositivo há um software que gera senhas e chama os clientes à medida que o caixa do banco aperta o botão "Próximo" localizado no balcão. Implemente um programa que simule este produto de software baseado na regra de negócio que a fila de "demais clientes" será acionada apenas se a fila para clientes "prioritários" estiver vazia. Na saída do programa, exiba as senhas que ainda estão nas respectivas filas.
Código
import java.util.LinkedList; import javax.swing.JOptionPane;
public class Atividade2 {
public static void main(String[] args) {
LinkedList<Integer> FilaComum = new LinkedList<Integer>(); LinkedList<Integer> FilaEspecial = new LinkedList<Integer>();
String opcoes[] = {"Idosos e Gestantes", "Comum", "Proximo", "Sair"}; String msg = "";
int senha = 1, opcao; do {
msg = "\nPrioritário (Idosos e Gestantes): " + exibe(FilaEspecial)
+ "\nDemais Cliente (Comum): " + exibe(FilaComum)
+ "\nClique de acordo com sua necessidade:"; opcao = JOptionPane.showOptionDialog(
null, msg,
"Banco do Brasil",
JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null, opcoes, opcoes[opcoes.length - 1]);
switch (opcao) { case 0:
FilaEspecial.add(senha++); break;
case 1:
FilaComum.add(senha++); break;
case 2:
if (!FilaEspecial.isEmpty()) {
msg = "Senha: " + FilaEspecial.getLast() + " Comparecer ao caixa!"; FilaEspecial.remove();
} else if (!FilaComum.isEmpty()) {
msg = "Senha: " + FilaComum.getLast() + " Comparecer ao caixa!"; FilaComum.remove();
} else {
msg = "Nao ha clientes nas filas!";
}
JOptionPane.showMessageDialog(null, msg);
}
} while (opcao!= opcoes.length - 1); System.out.println("FILA COMUM"); for (Integer i : FilaComum) {
System.out.println(i.toString());
}
System.out.println("FILA ESPECIAL"); for (Integer i : FilaEspecial) {
System.out.println(i.toString());
}
}
public static String exibe(LinkedList<Integer> Lista) { String resp = "";
for (Integer i : Lista) {
resp += i.toString() + " ";
}
return resp;
}
}
[pic 1]
[pic 2][pic 3]
...