1 /* 2 A program that creates squares in squares in squares in squares... 3 */ 4 5 package npw; 6 7 import shapes.SSquare; 8 import painter.SPainter; 9 10 import javax.swing.*; 11 import java.awt.*; 12 import java.util.Random; 13 import java.util.Scanner; 14 15 public class Stella { 16 17 public static void main(String[] args) { 18 19 int nrOfSquares=getNumber("How many squares"); 20 21 SPainter painter = new SPainter("Stella", 800,800); 22 SSquare square = new SSquare(700); 23 24 int i = 1; 25 int side = (700/nrOfSquares); 26 27 Color color1 = randomColor(); 28 Color color2 = randomColor(); 29 30 painter.setColor(color1); 31 painter.paint(square); 32 33 while (i <= nrOfSquares) { 34 square.shrink(side); 35 if (i % 2 == 0) { 36 painter.setColor(color1); 37 } else { 38 painter.setColor(color2); 39 } 40 painter.paint(square); 41 i=i+1; 42 } 43 44 } 45 46 private static int getNumber(String prompt) { 47 String nss = JOptionPane.showInputDialog(null,prompt+"?"); 48 Scanner scanner = new Scanner(nss); 49 return scanner.nextInt(); 50 } 51 52 private static Color randomColor() { 53 Random rgen = new Random(); 54 int r = rgen.nextInt(256); 55 int g = rgen.nextInt(256); 56 int b = rgen.nextInt(256); 57 return new Color(r, g, b); 58 } 59 } 60