Scratch runs on Macs and Windows PCs. It is a visual programming language; that is, the language provides predefined coding blocks that you put together like a puzzle. The pieces have parameters that you adjust to fit your needs. For example, the Repeat block has a parameter for how many times you want to repeat a step or set of steps:
I have been using Scratch for three years to solve math problems too complicated for pencil and paper. The math concepts or not necessarily overly complex, just the dirty work. For example, the math Gate class wrote a short program to compute the ratio of consecutive terms in the Fibonacci series. The ratios tend to a constant (the Golden Ratio), which can be seen by the program output. Performing the same task by hand would take hours and would be prone to error, even by adults. All one needs in a single arithmetic mistake and the significance of the activity would be lost.
Scratch program to compute Fibonacci Series and the ratios of Fn+1 / Fn.