E60F Thursday · Pull Request #3 · TeachingKidsProgramming/TeachingKidsProgramming.Java · GitHub
[go: up one dir, main page]

Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,21 +1,31 @@
package org.teachingkidsprogramming.recipes;

import org.teachingextensions.logo.Colors;
import org.teachingextensions.logo.Tortoise;

public class FourSquare
{
public static void main(String[] args)
{
// Show the tortoise --#1
// Make the tortoise move as fast as possible --#8
Tortoise.show();
Tortoise.setSpeed(10);
// Do the following 4 times --#9
// drawSquare (recipe below) --#7
// ------------- Recipe for drawSquare --#6
// Do the following 4 times --#5
// Change the color of the line the tortoise draws to a random color --#3
// Move the tortoise 50 pixels --#2
// Turn the tortoise 90 degrees to the right --#4
for (int i = 1; i <= 4; i++)
{
drawSquare();
Tortoise.turn(90);
}
// Repeat
// ------------- End of drawSquare recipe --#6
// Turn the tortoise 90 degrees to the right --#10
// Repeat
}
private static void drawSquare()
{
for (int i = 1; i <= 4; i++)
{
Tortoise.setPenColor(Colors.getRandomColor());
Tortoise.move(50);
Tortoise.turn(90);
}
}
}
Original file line number Diff line number Diff line change
@@ -1,26 +1,51 @@
package org.teachingkidsprogramming.recipes;

import java.awt.Color;

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.setX(200);
int height = 40;
drawHouse(height);
drawHouse(120);
drawHouse(90);
drawHouse(20);
}
private static void drawHouse(int height)
{
Tortoise.setPenColor(colorChooser());
Tortoise.setSpeed(10);
Tortoise.hide();
Tortoise.move(height);
//flatRoof();
//AmittaisRoof;
Tortoise.turn(45);
//move 10
Tortoise.move(10);
//turn 90 right
Tortoise.turn(90);
//move 10
Tortoise.move(10);
//turn 60
Tortoise.turn(45);
Tortoise.move(height);
Tortoise.turn(-90);
Tortoise.move(20);
Tortoise.turn(-90);
}
private static void flatRoof()
{
Tortoise.turn(90);
Tortoise.move(30);
Tortoise.turn(90);
}
private static Color colorChooser()
{
return Colors.Grays.LightGray;
}
}
Original file line number Diff line number Diff line change
@@ -1,16 +1,25 @@
package org.teachingkidsprogramming.recipes;

import java.awt.Color;

import org.teachingextensions.logo.Tortoise;

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);
simpleSquare();
simpleSquare();
}
private static void simpleSquare()
{
for (int i = 1; i <= 4; i++)
{
Tortoise.setPenColor(Color.blue);
Tortoise.move(50);
Tortoise.turn(90);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand All @@ -24,80 +22,80 @@ 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 ----->
}
@Test
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
Expand All @@ -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();
Expand All @@ -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();
Expand All @@ -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();
Expand All @@ -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();
Expand All @@ -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();
Expand Down
Loading
0