Resposta de referência elaborada por resolução técnica — não é o padrão da banca
Texto-base:
Dado um número natural n, o fatorial de n (n!) será 1 sempre que n = 1 ou n = 0 e será o produto de todos os números naturais desde n até 1, para qualquer n > 1, conforme se segue.
0! = 1
1! = 1
2! = 2×1 = 2
3! = 3×2×1 = 6
...
n! = n×(n - 1)×(n - 2)×...×2×1
Tendo como base o texto apresentado, desenvolva um programa em JavaScript que corretamente calcule e apresente o fatorial de um número digitado pelo usuário. Esse programa deverá ser executado via console (linha de comando) e deverá realizar o cálculo recursivamente por meio da função calculaFatorial(numero)[valor: 24,00 pontos]. Na primeira linha de seu código, deverá constar o comando const prompt = require('prompt-sync')({sigint: true});. Caso ele já não esteja apresentado, inclua-o. Ao desenvolver sua solução, considere os seguintes aspectos de validação e comunicação com o usuário [valor:16,00 pontos].
1 Para que o usuário digite o número desejado, o programa deverá apresentar um prompt (via console), o qual deverá exibir a seguinte mensagem: “Digite um número entre 0 e 100.”.
2 Caso o usuário digite um número fora dos limites apresentados ou digite qualquer outro caractere que não seja um número, o programa deverá apresentar a seguinte mensagem: “Erro. O número digitado deverá ser maior que 0 e menor que 100.”.
3 Caso o usuário digite um número dentro dos limites apresentados, o programa deverá apresentar a seguinte mensagem: “O fatorial do número x é y.”, em que x corresponde ao número digitado pelo usuário e y corresponde ao fatorial do número x.
Exemplos de resultados corretos
O fatorial do número 5 é 120.
O fatorial do número 0 é 1.
O fatorial do número 1 é 1.
O arquivo com o código precedente está no diretório SERPRO_23_PROVA\javascript\q2.js, na Área de Trabalho. Não exclua nenhum arquivo já presente nos diretórios. Renomeie o arquivo q2.js destinado ao desenvolvimento da solução com seu número de CPF, utilizando apenas algarismos, tal como o seguinte exemplo: 12345678900.js (caso ainda não o tenha feito). Para editar o arquivo renomeado, utilize o atalho do programa Notepad++ que se encontra na raiz do diretório SERPRO_23_PROVA. Para executar o código-fonte, abra o atalho do programa Prompt de Comando (cmd – Atalho) que se encontra na raiz do diretório SERPRO_23_PROVA na Área de Trabalho e, uma vez no console do Windows, execute o comando cd javascript para acessar a pasta que contém o arquivo com o código. Para executar o código presente no referido arquivo, execute o comando node nomedoarquivorenomeado.js (por exemplo, node 12345678900.js) dentro do diretório SERPRO_23_PROVA\javascript.
Ao finalizar sua solução, certifique-se de que o nome do arquivo esteja renomeado tal como supracitado. Por fim, salve o arquivo com esse novo nome e com sua extensão e feche o Prompt de Comando.
Dado um número natural n, o fatorial de n (n!) será 1 sempre que n = 1 ou n = 0 e será o produto de todos os números naturais desde n até 1, para qualquer n > 1, conforme se segue.
0! = 1
1! = 1
2! = 2×1 = 2
3! = 3×2×1 = 6
...
n! = n×(n - 1)×(n - 2)×...×2×1
Tendo como base o texto apresentado, desenvolva um programa em JavaScript que corretamente calcule e apresente o fatorial de um número digitado pelo usuário. Esse programa deverá ser executado via console (linha de comando) e deverá realizar o cálculo recursivamente por meio da função calculaFatorial(numero)[valor: 24,00 pontos]. Na primeira linha de seu código, deverá constar o comando const prompt = require('prompt-sync')({sigint: true});. Caso ele já não esteja apresentado, inclua-o. Ao desenvolver sua solução, considere os seguintes aspectos de validação e comunicação com o usuário [valor:16,00 pontos].
1 Para que o usuário digite o número desejado, o programa deverá apresentar um prompt (via console), o qual deverá exibir a seguinte mensagem: “Digite um número entre 0 e 100.”.
2 Caso o usuário digite um número fora dos limites apresentados ou digite qualquer outro caractere que não seja um número, o programa deverá apresentar a seguinte mensagem: “Erro. O número digitado deverá ser maior que 0 e menor que 100.”.
3 Caso o usuário digite um número dentro dos limites apresentados, o programa deverá apresentar a seguinte mensagem: “O fatorial do número x é y.”, em que x corresponde ao número digitado pelo usuário e y corresponde ao fatorial do número x.
Exemplos de resultados corretos
O fatorial do número 5 é 120.
O fatorial do número 0 é 1.
O fatorial do número 1 é 1.
O arquivo com o código precedente está no diretório SERPRO_23_PROVA\javascript\q2.js, na Área de Trabalho. Não exclua nenhum arquivo já presente nos diretórios. Renomeie o arquivo q2.js destinado ao desenvolvimento da solução com seu número de CPF, utilizando apenas algarismos, tal como o seguinte exemplo: 12345678900.js (caso ainda não o tenha feito). Para editar o arquivo renomeado, utilize o atalho do programa Notepad++ que se encontra na raiz do diretório SERPRO_23_PROVA. Para executar o código-fonte, abra o atalho do programa Prompt de Comando (cmd – Atalho) que se encontra na raiz do diretório SERPRO_23_PROVA na Área de Trabalho e, uma vez no console do Windows, execute o comando cd javascript para acessar a pasta que contém o arquivo com o código. Para executar o código presente no referido arquivo, execute o comando node nomedoarquivorenomeado.js (por exemplo, node 12345678900.js) dentro do diretório SERPRO_23_PROVA\javascript.
Ao finalizar sua solução, certifique-se de que o nome do arquivo esteja renomeado tal como supracitado. Por fim, salve o arquivo com esse novo nome e com sua extensão e feche o Prompt de Comando.
Pontuação impressa no comando: cálculo recursivo por meio de calculaFatorial(numero) 24,00 pontos; validação e comunicação com o usuário 16,00 pontos (total 40,00 pontos).