Grãos

Grãos

Fácil

Introdução

Era uma vez um servo sábio que salvou a vida de um príncipe. O rei prometeu pagar tudo o que o servo conseguisse imaginar. Sabendo que o rei adorava xadrez, o servo disse ao rei que gostaria de receber grãos de trigo. Um grão na primeira casa de um tabuleiro de xadrez, com o número de grãos a duplicar em cada casa seguinte.

Instruções

Calcula o número de grãos de trigo num tabuleiro de xadrez.

Um tabuleiro de xadrez tem 64 casas. A casa 1 tem um grão, a casa 2 tem dois grãos, a casa 3 tem quatro grãos, e assim por diante, duplicando a cada casa.

Escreve código que calcule:

  • o número de grãos numa determinada casa
  • o número total de grãos no tabuleiro de xadrez

Nota

Este tipo de problemas (em que uma resposta depende de uma anterior) é frequentemente designado por recursão. Há diferentes formas de implementar recursão; se não estiveres familiarizado com isto, pode valer a pena pesquisar sobre o assunto. O Pharo está bem otimizado para recursão, e este é um padrão muito utilizado.

Nota: na especificação original do problema, o grainsCalculator é chamado através de #square; no entanto, mudámos o nome deste método para #atSquare:, que é um nome mais ao estilo de Smalltalk e que descreve melhor que estás a pedir uma resposta "numa casa".

Editar via GitHub A ligação abre numa nova janela ou separador
Pharo Exercism

Estás pronto para começar Grãos?

Inscreve-te no Exercism para aprenderes e dominares Pharo com 50 exercícios, e mentoria humana real, tudo grátis.