Számold ki, mennyi búzaszem van egy sakktáblán, ha a szemek száma mezőről mezőre duplázódik.
Élt egyszer egy bölcs szolga, aki megmentette egy herceg életét. A király megígérte, hogy megadja neki, amit csak kitalál. A szolga tudta, hogy a király szeret sakkozni, ezért azt kérte tőle, hogy búzaszemeket kapjon. Egy szem búza a sakktábla első mezőjére, és minden következő mezőn duplázódjon a szemek száma.
A sakktáblán 64 mező van (az 1. mezőn egy szem, a 2. mezőn két szem, és így tovább).
Írj kódot, amely megmutatja:
Az ilyen jellegű feladatokat (ahol egy válasz egy korábbitól függ) gyakran rekurziónak nevezik. A rekurziót többféleképpen is meg lehet írni, és ha nem vagy vele ismerős, érdemes lehet utánaolvasni. A Pharo jól optimalizált a rekurzióra, és ez egy gyakran használt minta.
Megjegyzés: az eredeti feladatspecifikációban a grainsCalculator a #square üzenettel hívható meg, mi azonban átneveztük ezt a metódust #atSquare:-ra, ami egy sokkal Smalltalkosabb név, és jobban leírja, hogy egy adott mezőnél kérsz választ.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Pharo nyelvet 50 feladat segítségével, valódi emberi mentorálással, mindez ingyen.