2024年10月14日 星期一

Dubi Week06

 Week06


//week06_1_schulte_table01_line_fill_textSize_text_for

void setup(){

  size(500,500);

}

void draw(){

  background(#FFFFF2);

  line(0,100, 500,100);

  line(0,200, 500,200);

  line(0,300, 500,300);

  line(0,400, 500,400);

  

  line(100,0, 100,500);

  line(200,0, 200,500);

  line(300,0, 300,500);

  line(400,0, 400,500);

  

  fill(0);//黑色的字

  textSize(50);

  textAlign(CENTER,CENTER);

  for(int y=50; y<=450; y+=100){

    text("1", 50,y);

    text("1", 150,y);

    text("1", 250,y);

    text("1", 350,y);

    text("1", 450,y);

  }

}










//week06_2_schulte_table02_line_fill_textSize_text_for

void setup(){

  size(500,500);

  textSize(50);

  textAlign(CENTER,CENTER);

}

void draw(){

  for(int i=0; i<5; i++){

    for(int j=0; j<5; j++){

      fill(255); rect(j*100, i*100, 100, 100);

      fill(0); text("1",50+j*100, 50+i*100);

    }

  }

}









//week06_3_schulte_table03_random_sd_array_table


int [][] table = new int[5][5];

void setup(){

  size(500,500);

  textSize(50);

  textAlign(CENTER,CENTER);

  for(int i=0; i<5; i++){

    for(int j=0; j<5; j++){

      table[i][j] = int(random(1,26));//方法不對,會有重複的

     }

  }

}

void draw(){

  for(int i=0; i<5; i++){

    for(int j=0; j<5; j++){

      fill(255); rect(j*100, i*100, 100, 100);

      fill(0); text(""+table[i][j], 50+j*100, 50+i*100);

    }

  }

}











//week06_4_schulte_table04_no_repeat_used_array_while

int []used = new int[26];//0....25 共26個

int [][] table = new int[5][5];//Java陣列宣告

void setup(){

  size(500,500);

  textSize(50);

  textAlign(CENTER,CENTER);

  for(int i=0; i<5; i++){

    for(int j=0; j<5; j++){

      int now = int(random(1,26));

      while(used[now]==1) now = int(random(1,26));

      table[i][j] = now;

      used[now] = 1;

    }

  }

}

void draw(){

  for(int i=0; i<5; i++){

    for(int j=0; j<5; j++){

      fill(255); rect(j*100, i*100, 100, 100);

      fill(0); text(""+table[i][j], 50+j*100, 50+i*100);

    }

  }

}

















//week06_5_schulte_table05_void_moudePressed_pressed_i_j
int []used = new int[26];//0....25 共26個
int [][] table = new int[5][5];//Java陣列宣告
void setup(){
  size(500,500);
  textSize(50);
  textAlign(CENTER,CENTER);
  for(int i=0; i<5; i++){
    for(int j=0; j<5; j++){
      int now = int(random(1,26));
      while(used[now]==1) now = int(random(1,26));
      table[i][j] = now;
      used[now] = 1;
    }
  }
}

int [][]pressed = new int[5][5];
void draw(){
  for(int i=0; i<5; i++){
    for(int j=0; j<5; j++){
      if(pressed[i][j]==1) fill(128);
      else fill(255);
      rect(j*100, i*100, 100, 100);
      fill(0); text(""+table[i][j], 50+j*100, 50+i*100);
    }
  }
}
int want = 1;
void mousePressed(){
  int i = mouseY/100, j = mouseX/100;
  if(table[i][j]==want){
    pressed[i][j] = 1;
    want++;
  }
}
















//week06_6_schulte_table06_int_want_1_if_table_i_j_want
int []used = new int[26];//0....25 共26個
int [][] table = new int[5][5];//Java陣列宣告
void setup(){
  size(500,600);
  textSize(50);
  textAlign(CENTER,CENTER);
  for(int i=0; i<5; i++){
    for(int j=0; j<5; j++){
      int now = int(random(1,26));
      while(used[now]==1) now = int(random(1,26));
      table[i][j] = now;
      used[now] = 1;
    }
  }
}

int [][]pressed = new int[5][5];
void draw(){
  background(#FFFFF2);
  for(int i=0; i<5; i++){
    for(int j=0; j<5; j++){
      if(pressed[i][j]==1) fill(128);
      else fill(255);
      rect(j*100, i*100, 100, 100);
      fill(0); text(""+table[i][j], 50+j*100, 50+i*100);
    }
  }
  //text(""+hour()+"minute()+":"+second(), 200,550);
  text("You used "+millis()/1000,200,550);
}
int want = 1;
void mousePressed(){
  int i = mouseY/100, j = mouseX/100;
  if(table[i][j]==want){
    pressed[i][j] = 1;
    want++;
  }
}
















//week06_7_schulte_table07_millis
int [] used = new int[26]; //0...25共26個
int [][] table = new int [5][5]; //Java的陣列宣告
void setup() {
  size(500, 600);
  textSize(50);
  textAlign(CENTER, CENTER);
  for (int i=0; i<5; i++) { //對y座標
    for (int j=0; j<5; j++) { //對x座標
      int now = int (random(1, 26));
      while (used[now]==1) now = int(random(1, 26));
      table[i][j] = now;
      used[now]=1;
    }
  }
}
int [][]pressed = new int [5][5];
void draw() {
  background(#FFFFF2);
  for (int i=0; i<5; i++) { //對y座標
    for (int j=0; j<5; j++) { //對x座標
      if (pressed[i][j]==1) fill(128);
      else fill(255);
      rect(j*100, i*100, 100, 100);
      fill(0);
      text(""+table[i][j], 50+j*100, 50+i*100);
    }
  }
  text("You used "+millis()/1000, 200, 550);
}
int want=1;//希望你按的數字
void mousePressed() {
  int i = mouseY/100, j = mouseX/100;
  if (table[i][j]==want) {
    pressed[i][j] = 1;
    want++;
  }
}
















//week06_8_schuite_table08_nf_millis_startT
int [] used = new int[26]; //0...25共26個
int [][] table = new int [5][5]; //Java的陣列宣告
void setup() {
  size(500, 600);
  textSize(50);
  textAlign(CENTER, CENTER);
  for (int i=0; i<5; i++) { //對y座標
    for (int j=0; j<5; j++) { //對x座標
      int now = int (random(1, 26));
      while (used[now]==1) now = int(random(1, 26));//比較浪費時間,會一直(重挑)亂數
      table[i][j] = now;
      used[now]=1;
    }
  }
  startT= millis();
}
int startT = 0;
int [][]pressed = new int [5][5];
void draw() {
  background(#FFFFF2);
  for (int i=0; i<5; i++) { //對y座標
    for (int j=0; j<5; j++) { //對x座標
      if (pressed[i][j]==1) fill(128);
      else fill(255);
      rect(j*100, i*100, 100, 100);
      fill(0);
      text(""+table[i][j], 50+j*100, 50+i*100);
    }
  }
  text("You used "+nf((millis()-startT)/1000.0, 0, 1), 200, 550);
}
int want=1;//希望你按的數字
void mousePressed() {
  int i = mouseY/100, j = mouseX/100;
  if (table[i][j]==want) {
    pressed[i][j] = 1;
    want++;
  }
}


















//week06_9_schuite_table09_mousePressed_crash_if_protect_shuffle_random
int [] used = new int[26]; //0...25共26個
int [][] table = new int [5][5]; //Java陣列宣告
void setup() {
  size(500, 600);
  textSize(50);
  textAlign(CENTER, CENTER);
  int []numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25};
  for (int i=numbers.length -1; i>0; i--) { //對y座標
    int j = int(random(i+1));//隨機挑選一個數字
    //交換位置
    int temp = numbers[i];
    numbers[i] = numbers[j];
    numbers[j] = temp;
  }
  int index=0;
  for (int i=0; i<5; i++) {
    for (int j=0; j<5; j++) {
      table[i][j] = numbers[index++];
    }
  }
  startT= millis();//記錄你開始的時間
}
int startT = 0;
int [][]pressed = new int [5][5];
void draw() {
  background(#FFFFF2);
  for (int i=0; i<5; i++) { //對y座標
    for (int j=0; j<5; j++) { //對x座標
      if (pressed[i][j]==1) fill(128);
      else fill(255);
      rect(j*100, i*100, 100, 100);
      fill(0);
      text(""+table[i][j], 50+j*100, 50+i*100);
    }
  }
  text("You used "+nf((millis()-startT)/1000.0, 0, 1), 200, 550);
}
int want=1;//希望你按的數字
void mousePressed() {
  int i = mouseY/100, j = mouseX/100;
  if (table[i][j]==want) {
    pressed[i][j] = 1;
    want++;
  }
}



沒有留言:

張貼留言