2022年9月19日 星期一

(OwO)week03_9/19

 

把上禮拜的最後的程式再跑出來一次

void setup(){

   size(500,500); 
   PFont font = createFont("標楷體",40);
   textFont(font);
   String [] flower ={"黑桃","紅心","方塊","梅花"};//陣列
   face1 = flower[int(random(4))]+ int (random(13)+1);
   face2 = flower[int(random(4))]+ int (random(13)+1);
   face3 = flower[int(random(4))]+ int (random(13)+1);
   face4 = flower[int(random(4))]+ int (random(13)+1);
}//取整數0-12,所以再加一
String face1,face2,face3,face4;

void draw(){
  
  drawCard(100,100, face1);
  drawCard(130,130, face2);
  drawCard(160,160, face3);
  drawCard(190,190, face4);
}
void drawCard(int x,int y, String face){
  int A=20;
  fill(255);
  rect(x-A/2,y-A/2,100+A,150+A,7);
  fill(#6ACCD6);
  rect(x,y,100,150,7);
  
  //fill(0);
  if( face.indexOf("黑桃")== -1 && face.indexOf("梅花") ==-1)fill(#FF0000);
  else fill(0);
  textSize(40);
  text(face,x+2,y+30);
 
}

可以點擊滑鼠進行洗牌

void setup(){
  
   size(500,500); 
   PFont font = createFont("標楷體",40);
   textFont(font);
   myShuffle();
}
void myShuffle(){
   String [] flower ={"黑桃","紅心","方塊","梅花"};//陣列
   face1 = flower[int(random(4))]+ int (random(13)+1);
   face2 = flower[int(random(4))]+ int (random(13)+1);
   face3 = flower[int(random(4))]+ int (random(13)+1);
   face4 = flower[int(random(4))]+ int (random(13)+1);
}//取整數0-12,所以再加一
void mousePressed(){
  
  myShuffle();
}

String face1,face2,face3,face4;
void draw(){
  
  drawCard(100,100, face1);
  drawCard(130,130, face2);
  drawCard(160,160, face3);
  drawCard(190,190, face4);
}
void drawCard(int x,int y, String face){
  int A=20;
  fill(255);
  rect(x-A/2,y-A/2,100+A,150+A,7);
  fill(#6ACCD6);
  rect(x,y,100,150,7);
  
  //fill(0);
  if( face.indexOf("黑桃")== -1 && face.indexOf("梅花") ==-1)fill(#FF0000);
  else fill(0);
  textSize(40);
  text(face,x+2,y+30);
 
}


把52張牌做出來 




加上花色



void setup(){
  
 size(800,600); 
 PFont font = createFont("標楷體",16);
 textFont(font);
  
}
String[ ]faces={
  
  "黑桃A","黑桃1","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",
  "紅心A","紅心1","紅心2","紅心3","紅心4","紅心5","紅心6","紅心7","紅心8","紅心9","紅心10","紅心J","紅心Q","紅心K",
  "方塊A","方塊1","方塊2","方塊3","方塊4","方塊5","方塊6","方塊7","方塊8","方塊9","方塊10","方塊J","方塊Q","方塊K",
  "梅花A","梅花1","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K"  };

void draw(){
  
   background(#FFFFF2);
   for(int i=0;i<52;i++){
     
     int x=(i%13)*60;//除法10餘數,個位數
     int y=int(i/13)*120;//十位數
     fill(255); rect(x,y,60,120);
     
     
     if(faces[i].indexOf("紅心")== -1 && faces[i].indexOf("方塊")== -1) fill(0);
     else fill(255,0,0);
     text(faces[i],x+10,y+60);
   }  
  
}


亂數洗牌


void setup(){

 size(800,600); 

 PFont font = createFont("標楷體",16);

 textFont(font);

  

}

String[]faces={

  

  "黑桃A","黑桃1","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",

  "紅心A","紅心1","紅心2","紅心3","紅心4","紅心5","紅心6","紅心7","紅心8","紅心9","紅心10","紅心J","紅心Q","紅心K",

  "方塊A","方塊1","方塊2","方塊3","方塊4","方塊5","方塊6","方塊7","方塊8","方塊9","方塊10","方塊J","方塊Q","方塊K",

  "梅花A","梅花1","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K" };

void draw(){

  

   background(#FFFFF2);

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

     

     int x=(i%13)*60;//除法10餘數,個位數

     int y=int(i/13)*120;//十位數

     fill(255); rect(x,y,60,120);

     

     

     if(faces[i].indexOf("紅心")==-1 && faces[i].indexOf("方塊")==-1) fill(0);

     else fill(255,0,0);

     text(faces[i],x+10,y+60);

   }  

  

}

void mousePressed(){

  

 int a = int(random(52));

 int b = int(random(52));

 

 String temp =faces[a];

 faces[a] =faces[b];

 faces[b] =temp;

}



換一種方式寫亂數洗牌



void setup(){

 size(800,600); 

 PFont font = createFont("標楷體",16);

 textFont(font);

 myShuffle();

}

String[]faces={

  

  "黑桃A","黑桃1","黑桃2","黑桃3","黑桃4","黑桃5","黑桃6","黑桃7","黑桃8","黑桃9","黑桃10","黑桃J","黑桃Q","黑桃K",

  "紅心A","紅心1","紅心2","紅心3","紅心4","紅心5","紅心6","紅心7","紅心8","紅心9","紅心10","紅心J","紅心Q","紅心K",

  "方塊A","方塊1","方塊2","方塊3","方塊4","方塊5","方塊6","方塊7","方塊8","方塊9","方塊10","方塊J","方塊Q","方塊K",

  "梅花A","梅花1","梅花2","梅花3","梅花4","梅花5","梅花6","梅花7","梅花8","梅花9","梅花10","梅花J","梅花Q","梅花K" };

void mousePressed(){

  myShuffle();

}

String face1,face2,face3,face4;

void draw(){

  

   background(#FFFFF2);

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

     

     int x=(i%13)*60;//除法10餘數,個位數

     int y=int(i/13)*120;//十位數

     fill(255); rect(x,y,60,120);

     

     if(faces[i].indexOf("紅心")==-1 && faces[i].indexOf("方塊")==-1) fill(0);

     else fill(255,0,0);

     text(faces[i],x+10,y+60);

   }  

  

}

void myShuffle(){

  for(int k=0;k<10000;k++){

 int a = int(random(52));

 int b = int(random(52));

 

 String temp =faces[a];

 faces[a] =faces[b];

 faces[b] =temp;

}

  face1 = faces[0];

  face2 = faces[1];

  face3 = faces[2];

  face4 = faces[3];

}


沒有留言:

張貼留言