Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Aleatoriedade com pseudocódigo

Bom, estudando mais sobre lógica de programação em um livro específico para isso, que não utiliza nenhuma linguagem de programação, mas sim pseudocódigo e fluxograma, me deparei com uma questão a qual ainda não encontrei solução. Eis o seguinte enunciado:

"Crie um pseudocódigo que mostre a lógica para um programa gerar um número aleatório entre 1 e 10 e peça ao usuario que pense em um numero. Então apresente o numero aleatório gerado para que o usuário possa ver se ele ou ela acertou."

Alguém consegue solucionar (não tem Math.random() em pseudocódigo até onde eu saiba)? Foi apresentado até agora apenas if, else e while.

3 respostas

Bom dia, Luan! Como vai?

Pelo que eu entendi, a ideia não é focar na forma como o número aleatório será gerado e sim na lógica que vc irá ter que construir dado que o tal número foi passado pra vc!

Portanto, acho que vc pode fazer algo do tipo:

variavel numeroAleatorio = geraNumero(10);

// Restante do código omitido.

Onde geraNumero() é uma função qualquer que te devolve um número aleatório entre 1 e o parâmetro que ela recebe, seja lá qual for a implementação dela, que ao meu ver não é o foco da questão!

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Eles querem é a função geraNumero mesmo, é pq o enunciado é enorme e eu so coloquei a pergunta final. Dentro do enunciado eles ja deram essa sentença. =/

solução!

Entendi, Luan! Sem o contexto do livro fica meio complicado de dizer o que eles querem com exatidão.

Mas, de forma geral, vc poderia fazer uma função geraNumero(limiteSuperior) que gera um número qualquer entre 1 e um limite superior recebido como parâmetro. A lógica contida nessa função é pegar o horário atual em milissegundos, calcular o módulo com base no parâmetro limiteSuperior e depois somar 1.

funcao geraNumero(limiteSuperior) {
     retorna (pegaHorarioEmMilissegundos() % limiteSuperior) + 1;
}

O que vc acha? Faz sentido pra vc?

Qualquer coisa é só falar, meu aluno!