Skip to content

Commit 632492b

Browse files
committed
added kata questions for 7 and 8
1 parent 891bf7d commit 632492b

File tree

4 files changed

+125
-9
lines changed

4 files changed

+125
-9
lines changed

src/main/java/org/teachingkidsprogramming/recipes/completed/section07objects/SuperTurtlesKataQuestion.java renamed to src/main/java/org/teachingkidsprogramming/recipes/completed/section07objects/KataQuestions/ApplaudTheSlowTurtle.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
1-
package org.teachingkidsprogramming.recipes.completed.section07objects;
1+
package org.teachingkidsprogramming.recipes.completed.section07objects.KataQuestions;
22

33
import org.teachingextensions.WindowUtils.MultiTurtleWindow;
44
import org.teachingextensions.logo.Turtle;
55

66
//
77
//------------Kata Question---------------//
8-
// How would you add a sound before the slow turtle draws a triangle?
8+
// How would you add an applause sound AFTER the slow turtle draws a triangle?
99
// Write out the steps in English
1010
// Then translate the steps into code
1111
// Make sure to run after each line
1212
//
13-
public class SuperTurtlesKataQuestion
13+
public class ApplaudTheSlowTurtle
1414
{
1515
public MultiTurtleWindow mtw = new MultiTurtleWindow();
16-
public SuperTurtlesKataQuestion()
16+
public ApplaudTheSlowTurtle()
1717
{
1818
showSomeTurtles();
1919
}
2020
public static void main(String[] args)
2121
{
22-
new SuperTurtlesKataQuestion();
22+
new ApplaudTheSlowTurtle();
2323
}
2424
private void showSomeTurtles()
2525
{
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
package org.teachingkidsprogramming.recipes.completed.section07objects.KataQuestions;
2+
3+
import org.teachingextensions.WindowUtils.MultiTurtleWindow;
4+
import org.teachingextensions.logo.Sound;
5+
import org.teachingextensions.logo.Turtle;
6+
7+
//
8+
//------------Kata Question---------------//
9+
// How would you add an applause sound after the slow turtle draws a triangle?
10+
// NOTE for teacher - add to the makeSlowTurtle method due to object instantiation order
11+
//
12+
public class ApplaudTheSlowTurtle_ANSWER
13+
{
14+
public MultiTurtleWindow mtw = new MultiTurtleWindow();
15+
public ApplaudTheSlowTurtle_ANSWER()
16+
{
17+
showSomeTurtles();
18+
}
19+
public static void main(String[] args)
20+
{
21+
new ApplaudTheSlowTurtle_ANSWER();
22+
}
23+
private void showSomeTurtles()
24+
{
25+
makeSlowTurtle();
26+
makeSpeedyTurtle();
27+
makeCrazyTurtle();
28+
}
29+
private void makeSlowTurtle()
30+
{
31+
Turtle slowTurtle = new Turtle();
32+
mtw.addAndShowTurtle(slowTurtle);
33+
slowTurtle.drawTriangle(-50);
34+
Sound s = new Sound();
35+
s.setSound(Sound.TKPSound.Applause);
36+
s.playSound();
37+
}
38+
private void makeSpeedyTurtle()
39+
{
40+
Turtle speedyTurtle = new Turtle();
41+
mtw.addAndShowTurtle(speedyTurtle);
42+
speedyTurtle.setSpeed(10);
43+
speedyTurtle.drawTriangle(100);
44+
}
45+
private void makeCrazyTurtle()
46+
{
47+
Turtle crazyTurtle = new Turtle();
48+
mtw.addTurtle(crazyTurtle);
49+
crazyTurtle.drawLightning(55);
50+
}
51+
}

src/main/java/org/teachingkidsprogramming/recipes/completed/section08events/SimpleBubbleKataQuestion.java renamed to src/main/java/org/teachingkidsprogramming/recipes/completed/section08events/KataQuestion/SimpleBubbleToUnicorn.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.teachingkidsprogramming.recipes.completed.section08events;
1+
package org.teachingkidsprogramming.recipes.completed.section08events.KataQuestion;
22

33
import org.teachingextensions.WindowUtils.ProgramWindow;
44
import org.teachingextensions.approvals.lite.util.NumberUtils;
@@ -14,10 +14,10 @@
1414
// Then translate the steps into code
1515
// Make sure to run after each line
1616
//
17-
public class SimpleBubbleKataQuestion implements MouseLeftClickListener
17+
public class SimpleBubbleToUnicorn implements MouseLeftClickListener
1818
{
1919
private ProgramWindow programWindow;
20-
public SimpleBubbleKataQuestion()
20+
public SimpleBubbleToUnicorn()
2121
{
2222
programWindow = new ProgramWindow("My Bubble");
2323
programWindow.setWindowVisible(true);
@@ -46,6 +46,6 @@ private void createBubble(int x, int y)
4646
}
4747
public static void main(String[] args)
4848
{
49-
new SimpleBubbleKataQuestion();
49+
new SimpleBubbleToUnicorn();
5050
}
5151
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
package org.teachingkidsprogramming.recipes.completed.section08events.KataQuestion;
2+
3+
import org.teachingextensions.WindowUtils.ProgramWindow;
4+
import org.teachingextensions.approvals.lite.util.NumberUtils;
5+
import org.teachingextensions.logo.Unicorn;
6+
import org.teachingextensions.logo.utils.ColorUtils.ColorWheel;
7+
import org.teachingextensions.logo.utils.ColorUtils.PenColors;
8+
import org.teachingextensions.logo.utils.EventUtils.MouseLeftClickListener;
9+
import org.teachingextensions.logo.utils.EventUtils.MouseRightClickListener;
10+
import org.teachingextensions.logo.utils.LineAndShapeUtils.Circle;
11+
12+
//
13+
//------------Kata Question---------------//
14+
// How would you change your bubble into a unicorn when you right click on the window?
15+
// Write out the steps in English
16+
// Then translate the steps into code
17+
// Make sure to run after each line
18+
//
19+
public class SimpleBubbleToUnicorn_ANSWER implements MouseLeftClickListener, MouseRightClickListener
20+
{
21+
private ProgramWindow programWindow;
22+
public SimpleBubbleToUnicorn_ANSWER()
23+
{
24+
programWindow = new ProgramWindow("My Bubble --> Unicorn");
25+
programWindow.setWindowVisible(true);
26+
programWindow.addMouseLeftClickListener(this);
27+
programWindow.addMouseRightClickListener(this);
28+
prepareColorPalette();
29+
}
30+
private void prepareColorPalette()
31+
{
32+
ColorWheel.addColor(PenColors.Blues.LightSteelBlue);
33+
ColorWheel.addColor(PenColors.Blues.Blue);
34+
ColorWheel.addColor(PenColors.Blues.DarkBlue);
35+
ColorWheel.addColor(PenColors.Purples.Purple);
36+
}
37+
@Override
38+
public void onLeftMouseClick(int x, int y)
39+
{
40+
createBubble(x, y);
41+
}
42+
@Override
43+
public void onRightMouseClick(int x, int y)
44+
{
45+
createUnicorn(x, y, 50);
46+
}
47+
private void createUnicorn(int x, int y, int size)
48+
{
49+
programWindow.clearWindow();
50+
Unicorn u = new Unicorn(x, y, size);
51+
u.addTo(programWindow);
52+
}
53+
private void createBubble(int x, int y)
54+
{
55+
programWindow.clearWindow();
56+
int radius = NumberUtils.getRandomInt(10, 50);
57+
Circle circle = new Circle(radius, ColorWheel.getNextColor());
58+
circle.setCenter(x, y);
59+
circle.addTo(programWindow);
60+
}
61+
public static void main(String[] args)
62+
{
63+
new SimpleBubbleToUnicorn_ANSWER();
64+
}
65+
}

0 commit comments

Comments
 (0)