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