Skip to content

Instantly share code, notes, and snippets.

@acwoss
Created May 18, 2017 17:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save acwoss/0cf4598c0bb4e2d0247c645c92593cdd to your computer and use it in GitHub Desktop.
Save acwoss/0cf4598c0bb4e2d0247c645c92593cdd to your computer and use it in GitHub Desktop.
Um engenheiro ficou responsável por desenvolver um programa que verificasse se um número é primo através de quatro métodos
distintos. Para otimizar o tempo de execução do programa, o engenheiro executou os métodos de forma paralela, utilizando
threads, porém, ele percebeu que não era necessário aguardar todos os métodos finalizarem, mas apenas a maioria. Analisando
mais a fundo, descobriu-se que o método A é ligeiramente mais confiável que os outros métodos, portanto, o resultado final
poderia ser obtido quando dois métodos fossem finalizados, sendo um deles o método A. Caso contrário, o programa deverá
continuar executando. A verificação se o programa deve encerrar deverá executar o mínimo de operações lógicas possíveis.
(Dica: utilize o mapa de Karnaugh para efetuar a minimização da expressão lógica)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment