### Learning Coding and Math with Robots

 Grid: Tics Lines: Width px Hash Lines: Width px Labels: Font px Trace Lines: Robot 1: Width px Robot 2: Width px Robot 3: Width px Robot 4: Width px
 Axes: x-axis y-axis Show Grid Grid: 24x24 inches 36x36 inches 72x72 inches 96x96 inches 192x192 inches Quad: 4 quadrants 1 quadrant Units: US Customary Metric
 Background:

#### Robot 1

 Initial Position: ( in, in) Initial Angle: deg Current Position: (0 in, 0 in) Current Angle: 90 deg Wheel Radius: 1.75 in1.625 in2.0 in Track Width: in

#### Robot 2

 Initial Position: ( in, in) Initial Angle: deg Current Position: (6 in, 0 in) Current Angle: 90 deg Wheel Radius: 1.75 in1.625 in2.0 in Track Width: in

#### Robot 3

 Initial Position: ( in, in) Initial Angle: deg Current Position: (12 in, 0 in) Current Angle: 90 deg Wheel Radius: 1.75 in1.625 in2.0 in Track Width: in

#### Robot 4

 Initial Position: ( in, in) Initial Angle: deg Current Position: (18 in, 0 in) Current Angle: 90 deg Wheel Radius: 1.75 in1.625 in2.0 in Track Width: in

Animate a Cannonball
Problem Statement:
The preplaced blocks draw the cannon. Add a cannonball that begins at (7.5, 7.5), reaching its maxing height at (16, 16) that falls to ground.
```/* Code generated by RoboBlockly v2.0 */
#include <chplot.h>
double i;
CPlot plot;

for(i = 7.5; i <= 30; i += 0.5) {
plot.backgroundColor("#cccccc");
plot.noStrokeColor();
plot.fillColor("black");
plot.circle(i, pow(i - 16, 2) * -0.117647058824 + 16, 0.5);
plot.circle(3, 3, 2);
plot.fillColor("#993300");
plot.quad(2, 5, 5, 2, 8, 7, 7, 8);
plot.fillColor("#33cc00");
plot.rectangle(0, 0, 36, 1);
delaySeconds(0.03);
}

plot.axisRange(PLOT_AXIS_XY, 0, 36);
plot.ticsRange(PLOT_AXIS_XY, 6);
plot.sizeRatio(1);
plot.plotting();```
 Blocks Save Blocks Load Blocks Show Ch Save Ch Workspace
Problem Statement:
The preplaced blocks draw the cannon. Add a cannonball that begins at (7.5, 7.5), reaching its maxing height at (16, 16) that falls to ground.

Time