This is an old revision of the document!
Note: From now on ALL game reviews must address Ludus, Paida, and Narrative.
// Selection Sort int list[] = {2, 4 , 9, 6, 3, 8, 4, 1, 2, 5}; int min_index = 0; int temp; for (int i = 0; i < 10; i++) // print the list to see it { print(list[i] + " "); } print("\n"); // print a new line for (int i = 0; i < 10; i++) // start the sort { min_index = i; // set the min_index to the begining of the list for (int j = i+1; j < 10; j++) // search the rest of the list to find the min value { if (list[min_index] > list[j]) // if the there is a smaller value found, save it! { min_index = j; } } temp = list[i]; // swap the min value to the right place list[i] = list[min_index]; list[min_index] = temp; } for (int i = 0; i < 10; i++) // print the list again { print(list[i] + " "); }
TA: Jeffrey
TA: Yinan
TA: Kevin
// Credit: RadioTech@Github // Visual Sort int i = 0, j = 0; int tempcheesestick; int sticks = 40; int[] cheesesticks = new int [sticks]; int[] oldsticks = new int [sticks]; void setup() { size(500,400); for(int fi = 0; fi < sticks; fi++){ cheesesticks[fi] = round(random(500)); oldsticks[fi] = cheesesticks[fi]; } } void draw() { if(j>-1){ if(i>-1){ if(cheesesticks[i]>cheesesticks[i+1]){ tempcheesestick = cheesesticks[i]; cheesesticks[i] = cheesesticks[i+1]; cheesesticks[i+1] = tempcheesestick; } i++; if(i >= sticks-1){ i = 0; j++; } } if(j >= sticks-1){ j = -1; } } rectMode(CENTER); background(255); for(int fi = 0; fi < sticks; fi++){ if(cheesesticks[fi] == oldsticks[fi]){ fill(255,200,0); } else { fill(255,0,0); } rect(cheesesticks[fi]/2-1,(400/sticks)*fi+(400/sticks)/2,cheesesticks[fi],400/sticks); oldsticks[fi] = cheesesticks[fi]; }
// Car Objects from Processing.org // Example: Two Car objects Car myCar1; Car myCar2; // Two objects! void setup() { size(200,200); // Parameters go inside the parentheses when the object is constructed. myCar1 = new Car(color(255,0,0),0,100,2); myCar2 = new Car(color(0,0,255),0,10,1); } void draw() { background(255); myCar1.drive(); myCar1.display(); myCar2.drive(); myCar2.display(); } // Even though there are multiple objects, we still only need one class. // No matter how many cookies we make, only one cookie cutter is needed. class Car { color c; float xpos; float ypos; float xspeed; // The Constructor is defined with arguments. Car(color tempC, float tempXpos, float tempYpos, float tempXspeed) { c = tempC; xpos = tempXpos; ypos = tempYpos; xspeed = tempXspeed; } void display() { stroke(0); fill(c); rectMode(CENTER); rect(xpos,ypos,20,10); } void drive() { xpos = xpos + xspeed; if (xpos > width) { xpos = 0; } } }
// Credit: Neel int[] cheesesticks = {200, 40, 170, 50, 70, 60, 80, 90, 190, 150, 100, 110, 120, 140, 180, 130, 20, 160, 30, 10}; int i = -1; int j = 0; int min; void setup() { size (250, 250); } void draw() { background(200); // only runs after j reaches 20 if ((j == 20) && (i < 19)) { i++; j=i+1; min = cheesesticks[i]; } // runs as long as j is less than 20 if (j < 20) { if (cheesesticks[j] < min){ min = cheesesticks[j]; //swap int temp = cheesesticks[i]; cheesesticks[i] = cheesesticks[j]; cheesesticks[j] = temp; } j++; } fill(#EA5353); for (int i=0; i<20; i++) { rect(0, i*10,cheesesticks[i], 5); } }