diff --git a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Houses.java b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Houses.java index 16c8cb93..feb54f23 100644 --- a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Houses.java +++ b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Houses.java @@ -1,26 +1,57 @@ package org.teachingkidsprogramming.recipes; +import org.teachingextensions.logo.Colors; +import org.teachingextensions.logo.Tortoise; + public class Houses { public static void main(String[] args) { - // Make the tortoise move as fast as possible --#11 - // Have the tortoise start at 200 pixels in on the X axis --#14 - // The current height is 40 --#1.2 - // drawHouse (recipe below) --#9 - // ------------- Recipe for drawHouse --#9 - // Change the color of the line the tortoise draws to lightGray --#15 - // Move the tortoise the height of a house --#1.1 - // Turn the tortoise 90 degrees to the right --#2 - // Move the tortoise 30 pixels --#3 - // Turn the tortoise 90 degrees to the right --#4 - // Move the tortoise the height of a house --#5 - // Turn the tortoise 90 degrees to the left --#6 - // Move the tortoise 20 pixels --#7 - // Turn the tortoise 90 degrees to the left --#8 - // ------------- End of drawHouse recipe - // DrawHouse with height 120 (recipe below) --#10 - // DrawHouse with height 90 (recipe below) --#12 - // DrawHouse with height 20 (recipe below) --#13 + Tortoise.setSpeed(10); + Tortoise.setX(200); + int height = 40; + drawHouse(height); + drawHouse(120); + drawHouse(90); + drawHouse(20); + } + private static void drawHouse(int height) + { + Tortoise.setPenColor(Colors.Grays.LightGray); + Tortoise.move(height); + // flatRoof(); + //amittaisRoof(); + //MavericksRoof + mavericksRoof(); + Tortoise.turn(-90); + Tortoise.move(height); + Tortoise.turn(-90); + Tortoise.move(20); + Tortoise.turn(-90); + } + private static void mavericksRoof() + { + Tortoise.turn(-90); + Tortoise.move(10); + Tortoise.turn(90 + 45); + Tortoise.move(50); + Tortoise.turn(90); + Tortoise.move(50); + Tortoise.turn(90 + 45); + Tortoise.move(10); + } + private static void amittaisRoof() + { + Tortoise.turn(45); + Tortoise.move(10); + Tortoise.turn(90); + Tortoise.move(10); + Tortoise.turn(45); + } + private static void flatRoof() + { + Tortoise.turn(90); + Tortoise.move(30); + Tortoise.turn(90); } -} +} \ No newline at end of file diff --git a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/SimpleSquare.java b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/SimpleSquare.java index 855d3c6a..6a249630 100644 --- a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/SimpleSquare.java +++ b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/SimpleSquare.java @@ -1,16 +1,22 @@ package org.teachingkidsprogramming.recipes; +import org.teachingextensions.logo.Colors; +import org.teachingextensions.logo.Tortoise; +import org.teachingextensions.windows.MessageBox; public class SimpleSquare { public static void main(String[] args) throws Exception { - // Show the tortoise --#1 - // Make the tortoise move as fast as possible --#6 - // Do the following 4 times --#5.1 - // Change the color of the line the tortoise draws to "blue" --#4 - // Move the tortoise 50 pixels --#2 - // Turn the tortoise to the right (90 degrees) --#3 - // Repeat --#5.2 + Tortoise.show(); + Tortoise.setSpeed(10); + int sides = MessageBox.askForNumericalInput("How many sides would you like?"); + for (int i = 1; i <= sides; i++) + { + Tortoise.setPenColor(Colors.getRandomColor()); + Tortoise.setPenWidth(i * 3.5); + Tortoise.move(i * 5); + Tortoise.turn(360.0 * -3 / sides); + } } } diff --git a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Spiral.java b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Spiral.java index 14d93669..3666aee5 100644 --- a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Spiral.java +++ b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/Spiral.java @@ -1,18 +1,22 @@ package org.teachingkidsprogramming.recipes; +import org.teachingextensions.logo.Tortoise; public class Spiral { public static void main(String[] args) { - // Show the tortoise --#1 + Tortoise.show(); // Make the tortoise go as fast as possible --#4 // Add Blue Violet to the Color Wheel --#6 // Add Violet to the Color Wheel --#8 // Add Purple to the Color Wheel --#9 // Do the following 75 times --#3 - // Change the color of the line the tortoise draws the next color on the Color Wheel --#7 - // Move the tortoise 5 times the current line number you are drawing --#5 - // Turn the tortoise 1/3 of 360 degrees to the right --#2 + for (int i = 1; i <= 75; i++) + { + // Change the color of the line the tortoise draws the next color on the Color Wheel --#7 + // Move the tortoise 5 times the current line number you are drawing --#5 + Tortoise.turn(360 / 3); + } } } diff --git a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/homework/Homework01.java b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/homework/Homework01.java index ee1f46c1..5f6e6b28 100644 --- a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/homework/Homework01.java +++ b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/homework/Homework01.java @@ -3,13 +3,11 @@ import junit.framework.Assert; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.teachingextensions.logo.Tortoise; import org.teachingextensions.logo.Turtle; import org.teachingextensions.logo.utils.TortoiseUtils; - public class Homework01 { // 'How to do homework: @@ -24,54 +22,54 @@ public class Homework01 @Test public void numbersDoNotNeedQuotes() { - Assert.assertEquals(42, ____); + Assert.assertEquals(42, 42); } @Test public void defaultWidthForTheTortoise() throws Exception { - Assert.assertEquals(Tortoise.getPenWidth(), ____); + Assert.assertEquals(Tortoise.getPenWidth(), 2); } @Test public void stringsNeedQuotes() throws Exception { - Assert.assertEquals("Green", ___); + Assert.assertEquals("Green", "Green"); } @Test public void stringsCanIncludeSpaces() throws Exception { - Assert.assertEquals("This is a string", ___); + Assert.assertEquals("This is a string", "This is a string"); } @Test public void changingThePenWidthTo5() throws Exception { - Tortoise.setPenWidth(____); + Tortoise.setPenWidth(5); Assert.assertEquals(5, Tortoise.getPenWidth()); } @Test public void movingTheTortoise100Pixels() throws Exception { int start = Tortoise.getY(); - Tortoise.move(____); + Tortoise.move(100); Assert.assertEquals(Tortoise.getY(), start - 100); // 'Hint: make sure you read the name of this method } @Test public void theTortoiseTurns21() throws Exception { - Tortoise.turn(____); + Tortoise.turn(21); Assert.assertEquals(21.0, Tortoise.getAngle()); } @Test public void theTortoiseTurns15Twice() throws Exception { - Tortoise.turn(____); - Tortoise.turn(____); + Tortoise.turn(15); + Tortoise.turn(15); Assert.assertEquals(30.0, Tortoise.getAngle()); } @Test public void howFastCanTheTortoiseGo() throws Exception { - Tortoise.setSpeed(____); + Tortoise.setSpeed(10); Assert.assertEquals(Tortoise.getSpeed(), topSpeed); // 'Hint: Click SetSpeed then read the documentation on the left -----> } @@ -79,25 +77,25 @@ public void howFastCanTheTortoiseGo() throws Exception public void assigningVariables() throws Exception { int myFavoriteNumber = 101; - Assert.assertEquals(myFavoriteNumber, ____); + Assert.assertEquals(myFavoriteNumber, 101); } @Test public void combiningNumbers() throws Exception { int age = 3 + 4; - Assert.assertEquals(age, ____); + Assert.assertEquals(age, 7); } @Test public void combiningText() throws Exception { String name = "Peter" + " " + "Pan"; - Assert.assertEquals(name, ___); + Assert.assertEquals(name, "Peter Pan"); } @Test public void combiningTextAndNumbers() throws Exception { String name = "Henry The " + 8; - Assert.assertEquals(name, ___); + Assert.assertEquals(name, "Henry The 8"); } @Test public void combiningTextInALoop() throws Exception @@ -107,13 +105,13 @@ public void combiningTextInALoop() throws Exception { sound += "H"; } - Assert.assertEquals(sound, ___); + Assert.assertEquals(sound, "AHHH"); } @Test public void forLoopsEndAtTheEnd() throws Exception { String numbers = "# "; - for (int i = 1; i <= ____; i++) + for (int i = 1; i <= 5; i++) { numbers += i; preventInfiniteLoops(); @@ -124,7 +122,7 @@ public void forLoopsEndAtTheEnd() throws Exception public void forLoopsCanStartAnywhere() throws Exception { String answer = "Because "; - for (int i = ____; i <= 9; i++) + for (int i = 7; i <= 9; i++) { answer += i; preventInfiniteLoops(); @@ -136,7 +134,7 @@ public void forLoopsCanStartAnywhere() throws Exception public void forLoopsCanSkip() throws Exception { String numbers = "# "; - for (int i = 1; i <= 20; i += ____) + for (int i = 1; i <= 20; i += 2) { numbers = numbers + i + ","; preventInfiniteLoops(); @@ -147,7 +145,7 @@ public void forLoopsCanSkip() throws Exception public void forLoopsCanSkipUpAndDown() throws Exception { String numbers = "# "; - for (int i = 20; 0 < i && i <= 40; i += ____) + for (int i = 20; 0 < i && i <= 40; i += -3) { numbers = numbers + i + ","; preventInfiniteLoops(); @@ -158,7 +156,7 @@ public void forLoopsCanSkipUpAndDown() throws Exception public void forLoopsCanGoBackwards() throws Exception { String numbers = "Countdown: "; - for (int i = 9; i >= 1; i += ____) + for (int i = 9; i >= 1; i += -1) { numbers += i; preventInfiniteLoops(); diff --git a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/HousesQuiz.java b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/HousesQuiz.java index 5939a3b5..4d8d2689 100644 --- a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/HousesQuiz.java +++ b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/HousesQuiz.java @@ -1,5 +1,6 @@ package org.teachingkidsprogramming.recipes.quizzes; +import org.teachingextensions.logo.Tortoise; import org.teachingkidsprogramming.recipes.quizzes.graders.HousesQuizGrader; public class HousesQuiz extends org.teachingkidsprogramming.recipes.quizzes.graders.HousesQuiz @@ -7,31 +8,68 @@ public class HousesQuiz extends org.teachingkidsprogramming.recipes.quizzes.grad public void question1() { // The current length is 7 + length = 7; } // // Question2 // Create a method called medium // that sets the current length to 21 + @Override + public void medium() + { + // TODO Auto-generated method stub + super.medium(); + length = 21; + } // // // Question3 // Create a method called large // that sets the current length to 63 + @Override + public void large() + { + // TODO Auto-generated method stub + super.large(); + length = 63; + } // // // Question4 // Create a method called moveTheLength // that moves the Tortoise the current length + @Override + public void moveTheLength() + { + // TODO Auto-generated method stub + super.moveTheLength(); + Tortoise.move(length); + } // // // Question5 // Create a method called turnTheCorner // that turns the Tortoise 1/3 of 360 degrees to the left + @Override + public void turnTheCorner() + { + // TODO Auto-generated method stub + super.turnTheCorner(); + Tortoise.turn(360 / -3); + } // // // Question6 // Create a method called drawASide // that calls moveTheLength and turnTheCorner + @Override + public void drawASide() + { + // TODO Auto-generated method stub + super.drawASide(); + moveTheLength(); + turnTheCorner(); + } // public static void main(String[] args) { diff --git a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/SimpleSquareQuiz.java b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/SimpleSquareQuiz.java index 5f284d93..e4a6b8d0 100644 --- a/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/SimpleSquareQuiz.java +++ b/TeachingKidsProgramming/src/org/teachingkidsprogramming/recipes/quizzes/SimpleSquareQuiz.java @@ -1,5 +1,7 @@ package org.teachingkidsprogramming.recipes.quizzes; +import org.teachingextensions.logo.Colors; +import org.teachingextensions.logo.Tortoise; import org.teachingkidsprogramming.recipes.quizzes.graders.SimpleSquareQuizGrader; import org.teachingkidsprogramming.recipes.quizzes.graders.SquareQuiz; @@ -7,19 +9,19 @@ public class SimpleSquareQuiz implements SquareQuiz { public void question1() { - // Turn the tortoise 1/5 of 360 degrees to the right + Tortoise.turn(360 / 5); } public void question2() { - // Move the tortoise 110 pixels + Tortoise.move(110); } public void question3() { - // Change the color the tortoise draws to yellow + Tortoise.setPenColor(Colors.Yellows.Yellow); } public void question4() { - // Change the width of the line the tortoise draws to 5 pixels + Tortoise.setPenWidth(5); } public static void main(String[] args) {