Untitled - MaurizioCozzetto.it

Transcript

Untitled - MaurizioCozzetto.it
!
#
& ' &#
"
#
"
$
" ' &#
% & ' &#
//classe Card: rappresenta una generica carta da gioco
//file Card.cs
public class Card
{
private string v; //valore della carta
private string s; //seme della carta
//costruttore
public Card(string v,string s)
{
this.v=v;
this.s=s;
}
//ottiene il valore della carta
public string getValore() {
return v;
}
//ottiene il seme della carta
public string getSeme() {
return s;
}
//consente di ottenere una stringa che rappresenta la carta
//ad esempio AF rappresenta l’asso di fiori
public string getCard() {
return v+s;
}
//consente di ottenere il nome dell’immagine in formato png
//associata alla carta da gioco
//ad esempio AF.png è l’immagine dell’asso di fiori
//ovviamente presupponiamo di aver preparato in anticipo
//tutte le immagini delle carte da gioco
public string getImageCard() {
return v+s+”.png”;
}
}
((((((((((((((((((((((((
"
"
Card[] deck = new Card[52];
//I 4 semi: Cuori,Quadri,Fiori,Picche
string[] semi={"C","Q","F","P"};
//I valori delle carte
string[] valori={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
void Button1Click(object sender, System.EventArgs e)
{
Random rn = new Random();
int p = rn.Next(0,51);
textBox1.Text=deck[p].getCard();
label1.Text="Carta "+p;
pictureBox1.Image=Image.FromFile(deck[p].getImageCard());
}
private void Shuffle() {
// codice adattato tratto da C# di Deitel-Deitel
//mischio il mazzo
//cioè scambio la carta di posto i [i va da 0 a 51] con una
//pescata a caso nel mazzo
Random randomNumber = new Random();
Card temporaryValue;
// swap each card with random card
for (int i=0; i<deck.Length; i++)
{
int j = randomNumber.Next(52);
// swap cards
temporaryValue = deck[i];
deck[i] = deck[j];
deck[j] = temporaryValue;
}
} // end method Shuffle
void MainFormLoad(object sender, System.EventArgs e)
{
//inizializzo l'array di oggetti di tipo Card [deck]
//cioè un mazzo di carte nuovo appena comprato
//caricandovi la sequenza "standard"
richTextBox1.Text="";
int k=0;
for (int i=0;i<semi.Length; i++) {
string seme=semi[i];
for (int j=0; j<valori.Length; j++) {
Card temp=new Card(valori[j],seme);
richTextBox1.Text=richTextBox1.Text+temp.getCard()+" ";
deck[k]=temp;
k++;
}
}
}
void Button2Click(object sender, System.EventArgs e)
{
//mischio il mazzo
Shuffle();
//visualizzo le carte nella richTextBox1
richTextBox1.Text="";
for (int i=0; i<deck.Length; i++)
{
Card t=new Card(deck[i].getValore(),deck[i].getSeme());
richTextBox1.Text=richTextBox1.Text+t.getCard()+" ";
}
}