Op 21-9-2020 om 18:49 schreef Roelof Wobben via Pharo-users:
hello,

I need now to make code that calculates the full score of a bowling game like one of the tests shown.

test09_ConsecutiveStrikesEachGetTheTwoRollBonus
    | result |
    result := bowlingCalculator
        scoreAfterRolling: #(10 10 10 5 3 0 0 0 0 0 0 0 0 0 0 0 0).
    self assert: result equals: 81

What I thougt of solving this is to make a class BowlingCalculator and a class Frame
and first convert the numbers to a frame.

the Frame class should then have two instance variables throw1 and throw2 where throw2 can be null if the first throw is 10.

Then to calculate the total score I can check if the first number is 10
if so, take the next frame and sum them up.
if not, check if the total of a frame is 10
if so, take the first number out of the next frame and sum them up
if both are not true , then sum only the frame

and then in all cases goto the next frame.

Can this plan be working or is there improvements to this plan.

Roelof


No respons after 3 days. Pity

Reply via email to