quarta-feira, 7 de novembro de 2018

A garantia da resposta "certa"

No último post (https://vemfazermatematicaegames.blogspot.com/2018/11/jogo-das-equacoes.html) vimos a construção de um jogo de equações do 1º grau que são formadas de modo aleatório e o usuário pode testar seus conhecimentos. Se você verificou bem a programação deve ter notado que o nível 2 possui uma programação extra que usa o Mais Blocos Resposta Certa e que ele é utilizado em função do problema apresentado na figura abaixo:


Como podemos ver a resposta que o usuário deveria dar é a 0,666667 e qualquer valor diferente desse o sistema de validação consideraria errado, o que é péssimo, pois a maioria dos usuários escreve valores numéricos de até no máximo duas casas depois da virgula (ou ponto). Para isso, foi usado esse Mais Blocos Resposta Certa cujo objetivo é permitir uma variabilidade de respostas do usuário dentro de um limite superior e inferior máximo. Por exemplo, para o valor 0,666667, usamos o limite 0,05, ou seja, valores 0,05 a mais e a menos do que 0,666667, e obtemos o seguinte intervalo numérico:


Com isso, o valor normalmente digitado que é 0,66 (que na verdade é 0,6600000...) irá ser aceito como uma resposta válida. Mas como transpor isso para uma programação (se você quiser saber mais sobre isso, pesquise com a palavra-chave ponto flutuante)? Veja na figura abaixo, como foi construído o Mais Blocos Resposta Certa:


Como podemos ver acima, o Mais Blocos Resposta Certa pede três entradas numéricas, o valor da resposta calculada pelo sistema, o erro aceitável (que é o 0.05 definido acima e que pode ser mudado ao seu critério) e a resposta dada pelo usuário. É definida uma nova variável de resposta que será o certeza, que se passar no teste de validação de valores inferiores e superiores (resposta menor/maior do que valor +/- o erro) mantém o valor 1 como o correto e caso tenha qualquer valor divergente do aceitável, temos o 0 que seria a resposta não aceitável. Simples, certo? Que tal você dar uma replicada nessa estrutura e testar para outros valores? Deixe nos comentários suas experiências e até a próxima.

Nenhum comentário:

Postar um comentário

Como não perder nenhum compromisso: Meu App Agenda

No nosso dia a dia a agenda é um instrumento de grande importância que as pessoas utilizam para fazer anotações de compromissos ou informaçõ...