Esta tarefa consiste em receber um texto na entrada e contar quantos números primos existem nessa entrada. Porém, trata-se de um exercício de programação, e não somente de uma solução com algoritmo.
O objetivo desta tarefa é fazer o sistema operar como multi-thread,
usando a instrução pthread_create()
.
As soluções deverão ser estruturadas de forma que:
- cada número deve ser analisado (quanto a ser primo ou não) por uma thread independente.
- As threads deverão (ao menos potencialmente) poder executar em paralelo.
- O programa deverá assumir um número máximo de threads paralelas igual a
4
. - Todas as threads devem encerrar antes do fim do programa principal
AVISO: os números serão inteiros, sem sinal, entre 0 e 2^(64)-1
Soluções que não contemplem esses três requisitos não serão aceitas. Eles serão verificados manualmente, caso a caso.
Entrada | Saida |
---|---|
0\n |
0\n |
1\n |
0\n |
2 1\n |
1\n (operando em duas threads) |
2 1 0\n |
1\n (operando em três threads) |
`3 5 2 7 9 1 0\n | 4\n (operando em quatro threads) |
- Vá diretamente ao conjunto de testes para verificar como tratar casos limítrofes ou mal-definidos.
- Lembre-se de seguir as instruções de submissão.
- Se desejar, proponha novos casos de teste.