Font um amante do conhecimento, estava a procura de mais conhecimento, então foi atrás do guru da sabedoria, Faustino.
Chegando lá, descobriu que só era permitido a entrada de pessoas que respondessem a pergunta "Qual o fatorial primo de x?", em que o fatorial primo de x pode ser definido como a multiplicação dos primeiros x primos. Mas como Font ficou nervoso por estar quase conhecendo o guru, não conseguiu responder a pergunta. Ajude-o a calcular o fatorial primo de x para ele conseguir falar com Faustino!
Entrada:
A entrada consiste em um inteiro x (1 ⩽ 3 ⩽ 100), o x-ésimo fatorial primo a ser computado.
Saída:
Seu programa deve imprimir o x-ésimo fatorial primo.
Observações:
• No primeiro caso de teste, o resultado é 2, pois o primeiro primo é 2.
• No segundo caso de teste, o resultado é 1890, porque 2 x 3 x 5 x 7 x 11 = 1890.
Soluções para a tarefa
O programa resultante desta resolução não conta com validação de dados ou controle/tratamento de exceções, portanto será responsabilidade do usuário digitar um "x" dentro das exigências descritas no texto.
Ainda, pra espelhar os exemplos mostrados, não vamos mostrar quaisquer outros textos na tela, nem mesmo de solicitação de "x".
Vamos visualizar o código e, posteriormente, traço algumas observações sobre a solução utilizada.
Observações:
--> A variável "fat", utilizada para guardar o valor do fatorial primo, foi inicializada com valor 1, pois este é o elemento neutro na multiplicação.
--> O laço while foi utilizado para controlar o número de fatores no fatorial. Perceba que, com auxílio de um condicional if, sempre que achamos um número primo, "x" é decrementado.
--> O laço for foi utilizado para determinar se uma número "num" é ou não primo verificando a quantidade de divisores que possui, lembrando que números primos possuem exatamente 2 divisores. Para economizar tempo, adicionamos uma condição de saída do loop (break) no caso de já tiverem sido encontrados mais de dois divisores para "num".