procedimientos y algoritmos programados juego chakana

Upload: jose-roberto-sanchez-arteaga

Post on 04-Jul-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    1/55

    Procedimientos y algoritmos programados juego ChaKana

    Librerías utilizadas.

    using System;

    using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Tet;using System.T!reading.Tas"s;using System.#indows.$orms;using System.T!reading;using System.%&;

    namespace C!ac'ipus(  public partial class $orm) * $orm  (  Declaraci+n de arreglos bidimensionales usados

     string,- "ipus/ new string,0)-1;  string,- "ipusbara2ado/ new string,0)- 1;  string,- des!aser / new string,3- 3;  string,- c!ananas / new string,45- 6;

    7icture8o, picture8os / new 7icture8o,49;  int cc!acanas- cc!acanasec!as-des-cronometro;  public $orm):  (   T!read tiempo / new  T!read:new  T!readStart:screen);  tiempo.Start:;   T!read.Sleep:5

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    2/55

      int c/9;  Bor :int i/9; i3;i  (  iB  

    :des!aser,i- ) E/ null  (

      iB  

    :des!aser,i- ).ToString: E/ FnadaF  (  c / c );  >  >  >  button3.Tet / FDes!acer :F  c.ToString:FF;  iB  

    :c//9  (  button3.Tet / FDes!acer :F  c.ToString: FF;  >

      >protected ?oid inicializar:@A 7rocedimiento que inicializa las ?ariables

      (  cc!acanas / 9;

    cc!acanasec!as / 9;ttc!acanas.Tet /F9F;des!aser,9- ) / FnadaF;

      des!aser,)- ) / FnadaF;  des!aser,4- ) / FnadaF;  contardes!aser:;  ttcronometro.Tet / F9F;  cronometro / 9;  des / 9;  mazo.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!- string.$ormat:F%magenes(9>F-Fcartasll.pngF; @A %nstrucci+n que carga imagen en picturebo

      >

      public ?oid screen):  (  =pplication.Hun:new splas!:;  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    3/55

      pri?ate ?oid $orm)ILoad:ob2ect sender- J?ent=rgs e  (  picture8o)6.=llowDrop / true;  picture8o)K.=llowDrop / true;  picture8o)1.=llowDrop / true;

      button4.Jnabled / Balse;  buttonK.Jnabled / Balse;  inicializar:;  >  protected o?erride ?oid &nClosing:CancelJ?ent=rgs e  (  DialogHesult rs4 / Message8o.S!ow:FJsta opci+n cerrar C!a'ana- perder todas las C!a'anas ganadasnrDesea continuarF- FMensa2ede C!a'anaF- Message8o8uttons.NesOo- Message8o%con.#arning;

      (  iB  

    :rs4 // DialogHesult.Oo  e.Cancel / true;

      >

      >  pri?ate ?oid button1IClic":ob2ect sender- J?ent=rgs e  (  cerrar:;

    >

     pri?ate ?oid cerrar:@A 7rocedimiento que muestra un mensa2e antes de cerrar el 2uego

      (  iB  

    :Message8o.S!ow:FJsta opci+n cerrar C!a'ana- perder todas las C!a'anas ganadasnrDesea continuarF- FMensa2e de C!a'anaF-Message8o8uttons.NesOo- Message8o%con.#arning // DialogHesult.Nes  (

      =pplication.Jit:;  >  >

      pri?ate ?oid cargar"ipus:@A 7rocedimiento que carga en el arreglo "ipus todas las imgenes.Jn la posici+n cero:9-9 se almacena la inicial del color

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    4/55

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    5/55

      "ipus,K-4 / F3F;  "ipus,K-3 / FbF;  "ipus,K-6 / F)F;  "ipus,K-K / Fnc3bF;  "ipus,1-9 / FnF;

      "ipus,1-) / FtF;  "ipus,1-4 / F)F;  "ipus,1-3 / FbF;  "ipus,1-6 / F)F;  "ipus,1-K / Fnt)bF;  "ipus,5-9 / FnF;  "ipus,5-) / FtF;  "ipus,5-4 / F4F;  "ipus,5-3 / FbF;  "ipus,5-6 / F)F;  "ipus,5-K / Fnt4bF;  "ipus,0-9 / FnF;  "ipus,0-) / FtF;  "ipus,0-4 / F3F;  "ipus,0-3 / FbF;  "ipus,0-6 / F)F;  "ipus,0-K / Fnt3bF;  "ipus,

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    6/55

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    7/55

      "ipus,)0-9 / FaF;  "ipus,)0-) / FeF;  "ipus,)0-4 / F)F;  "ipus,)0-3 / FpF;  "ipus,)0-6 / F)F;

      "ipus,)0-K / Fae)pF;  "ipus,)

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    8/55

      "ipus,46-4 / F)F;  "ipus,46-3 / FpF;  "ipus,46-6 / F)F;  "ipus,46-K / Fnt)pF;  "ipus,4K-9 / FnF;

      "ipus,4K-) / FtF;  "ipus,4K-4 / F4F;  "ipus,4K-3 / FpF;  "ipus,4K-6 / F)F;  "ipus,4K-K / Fnt4pF;  "ipus,41-9 / FnF;  "ipus,41-) / FtF;  "ipus,41-4 / F3F;  "ipus,41-3 / FpF;  "ipus,41-6 / F)F;  "ipus,41-K / Fnt3pF;  "ipus,45-9 / FrF;  "ipus,45-) / FeF;  "ipus,45-4 / F)F;  "ipus,45-3 / FpF;  "ipus,45-6 / F)F;  "ipus,45-K / Fre)pF;  "ipus,40-9 / FrF;  "ipus,40-) / FeF;  "ipus,40-4 / F4F;  "ipus,40-3 / FpF;  "ipus,40-6 / F)F;  "ipus,40-K / Fre4pF;  "ipus,4

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    9/55

      "ipus,39-6 / F)F;  "ipus,39-K / Frt)pF;  "ipus,3)-9 / FrF;  "ipus,3)-) / FtF;  "ipus,3)-4 / F4F;

      "ipus,3)-3 / FpF;  "ipus,3)-6 / F)F;  "ipus,3)-K / Frt4pF;  "ipus,34-9 / FrF;  "ipus,34-) / FtF;  "ipus,34-4 / F3F;  "ipus,34-3 / FpF;  "ipus,34-6 / F)F;  "ipus,34-K / Frt3pF;  "ipus,33-9 / FaF;  "ipus,33-) / FcF;  "ipus,33-4 / F)F;  "ipus,33-3 / FpF;  "ipus,33-6 / F)F;  "ipus,33-K / Fac)pF;  "ipus,36-9 / FaF;  "ipus,36-) / FcF;  "ipus,36-4 / F4F;  "ipus,36-3 / FpF;  "ipus,36-6 / F)F;  "ipus,36-K / Fac4pF;  "ipus,3K-9 / FaF;  "ipus,3K-) / FcF;  "ipus,3K-4 / F3F;  "ipus,3K-3 / FpF;  "ipus,3K-6 / F)F;  "ipus,3K-K / Fac3pF;

      "ipus,31-9 / FnF;  "ipus,31-) / FcF;  "ipus,31-4 / F)F;  "ipus,31-3 / FsF;  "ipus,31-6 / F)F;  "ipus,31-K / Fnc)nF;

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    10/55

      "ipus,35-9 / FnF;  "ipus,35-) / FcF;  "ipus,35-4 / F4F;  "ipus,35-3 / FsF;  "ipus,35-6 / F)F;

      "ipus,35-K / Fnc4nF;  "ipus,30-9 / FnF;  "ipus,30-) / FcF;  "ipus,30-4 / F3F;  "ipus,30-3 / FsF;  "ipus,30-6 / F)F;  "ipus,30-K / Fnc3nF;  "ipus,3

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    11/55

      "ipus,63-4 / F4F;  "ipus,63-3 / FsF;  "ipus,63-6 / F)F;  "ipus,63-K / Fae4aF;  "ipus,66-9 / FaF;

      "ipus,66-) / FeF;  "ipus,66-4 / F3F;  "ipus,66-3 / FsF;  "ipus,66-6 / F)F;  "ipus,66-K / Fae3aF;  "ipus,6K-9 / FaF;  "ipus,6K-) / FcF;  "ipus,6K-4 / F)F;  "ipus,6K-3 / FsF;  "ipus,6K-6 / F)F;  "ipus,6K-K / Fac)aF;  "ipus,61-9 / FaF;  "ipus,61-) / FcF;  "ipus,61-4 / F4F;  "ipus,61-3 / FsF;  "ipus,61-6 / F)F;  "ipus,61-K / Fac4aF;  "ipus,65-9 / FaF;  "ipus,65-) / FcF;  "ipus,65-4 / F3F;  "ipus,65-3 / FsF;  "ipus,65-6 / F)F;  "ipus,65-K / Fac3aF;  "ipus,60-9 / FrF;  "ipus,60-) / FeF;  "ipus,60-4 / F)F;  "ipus,60-3 / FsF;

      "ipus,60-6 / F)F;  "ipus,60-K / Fre)rF;  "ipus,6

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    12/55

      "ipus,6

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    13/55

      "ipus,K1-9 / FnF;  "ipus,K1-) / FeF;  "ipus,K1-4 / F3F;  "ipus,K1-3 / FbF;  "ipus,K1-6 / F)F;

      "ipus,K1-K / Fne3bF;  "ipus,K5-9 / FrF;  "ipus,K5-) / FcF;  "ipus,K5-4 / F)F;  "ipus,K5-3 / FbF;  "ipus,K5-6 / F)F;  "ipus,K5-K / Frc)bF;  "ipus,K0-9 / FrF;  "ipus,K0-) / FcF;  "ipus,K0-4 / F4F;  "ipus,K0-3 / FbF;  "ipus,K0-6 / F)F;  "ipus,K0-K / Frc4bF;  "ipus,K

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    14/55

      "ipus,14-4 / F3F;  "ipus,14-3 / FpF;  "ipus,14-6 / F)F;  "ipus,14-K / Fne3pF;  "ipus,13-9 / FrF;

      "ipus,13-) / FcF;  "ipus,13-4 / F)F;  "ipus,13-3 / FpF;  "ipus,13-6 / F)F;  "ipus,13-K / Frc)pF;  "ipus,16-9 / FrF;  "ipus,16-) / FcF;  "ipus,16-4 / F4F;  "ipus,16-3 / FpF;  "ipus,16-6 / F)F;  "ipus,16-K / Frc4pF;  "ipus,1K-9 / FrF;  "ipus,1K-) / FcF;  "ipus,1K-4 / F3F;

      "ipus,1K-3 / FpF;  "ipus,1K-6 / F)F;  "ipus,1K-K / Frc3pF;  "ipus,11-9 / FaF;  "ipus,11-) / FtF;  "ipus,11-4 / F)F;  "ipus,11-3 / FbF;  "ipus,11-6 / F)F;  "ipus,11-K / Fat)bF;  "ipus,15-9 / FaF;  "ipus,15-) / FtF;  "ipus,15-4 / F4F;  "ipus,15-3 / FbF;

      "ipus,15-6 / F)F;  "ipus,15-K / Fat4bF;  "ipus,10-9 / FaF;  "ipus,10-) / FtF;  "ipus,10-4 / F3F;  "ipus,10-3 / FbF;

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    15/55

      "ipus,10-6 / F)F;  "ipus,10-K / Fat3bF;  "ipus,1

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    16/55

      "ipus,5K-9 / FrF;  "ipus,5K-) / FcF;  "ipus,5K-4 / F)F;  "ipus,5K-3 / FsF;  "ipus,5K-6 / F)F;

      "ipus,5K-K / Frc)rF;  "ipus,51-9 / FrF;  "ipus,51-) / FcF;  "ipus,51-4 / F4F;  "ipus,51-3 / FsF;  "ipus,51-6 / F)F;  "ipus,51-K / Frc4rF;  "ipus,55-9 / FrF;  "ipus,55-) / FcF;  "ipus,55-4 / F3F;  "ipus,55-3 / FsF;  "ipus,55-6 / F)F;  "ipus,55-K / Frc3rF;  "ipus,50-9 / FaF;

      "ipus,50-) / FtF;  "ipus,50-4 / F)F;  "ipus,50-3 / FsF;  "ipus,50-6 / F)F;  "ipus,50-K / Fat)aF;  "ipus,5

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    17/55

      (  ListintA numeros / new ListintA:;  Handom rnumero / new Handom:;  w!ile :numeros.Count / 09@A =lgoritmo que genera nPmeros aleatorios del 9 !asta el 09.  (

      int num / rnumero.Oet:9- 09;  iB  ::Enumeros.Contains:num  (  numeros.=dd:num;  >

    iB  :numeros.Count//09  (  Bor :int 2 / 9; 2 0); 2  (  iB  ::Enumeros.Contains:2  (  numeros.=dd:2;  >  >

      >>

      Bor :int i / 9; i 0); i@A 7roceso que toma los "ipus del arreglo "ipus y los asigna al arreglo "ipusbara2o de acuerdo a los nPmeros deposiciones obtenidas aleatoriamente del proceso anterior.  (  "ipusbara2ado,i- 9 / "ipus,numeros,i- 9;  "ipusbara2ado,i- ) / "ipus,numeros,i- );  "ipusbara2ado,i- 4 / "ipus,numeros,i- 4;  "ipusbara2ado,i- 3 / "ipus,numeros,i- 3;  "ipusbara2ado,i- 6 / "ipus,numeros,i- 6;  "ipusbara2ado,i- K / "ipus,numeros,i- K;

    > int car/@);

     Boreac! :Control cComprobar in group8o).Controls@A7roceso que muestra )4 "ipus en el tablero comprobando que no eista

    repetici+n  (  iB  :cComprobar is 7icture8o  (

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    18/55

      do  (  car / car );  > w!ile :"ipusbara2ado,car- 6 // F9F;  iB  :cComprobar.TagE/null

      (  iB  :cComprobar.Tag.ToString:E/car.ToString:  (  cComprobar.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!-string.$ormat:F%magenes(9>F- "ipusbara2ado,car- K F.2pgF;  cComprobar.Tag / car;  "ipusbara2ado,car- 6 / F9F;@A%nstrucci+n que indica que ya Bue usado un "ipus  car / car );  >  else  (  "ipusbara2ado,car- 6 / F9F;  >  >

      else  (  cComprobar.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!-string.$ormat:F%magenes(9>F- "ipusbara2ado,car- K F.2pgF;  cComprobar.Tag / car;  "ipusbara2ado,car- 6 / F9F;  car / car );  >

    >  >  picture8o)6.%mage / null;  picture8o)K.%mage / null;

      picture8o)1.%mage / null;  picture8o)6.Tag / null;  picture8o)K.Tag / null;  picture8o)1.Tag / null;  n"ipus:;  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    19/55

      pri?ate ?oid button)IClic":ob2ect sender- J?ent=rgs e  (  iB  :picture8o)6.%mage E/ null QQ picture8o)K.%mage E/ null QQ picture8o)1.%mage E/ null QQ ttc!acanas.TetE/F9F  (

      iB  :Message8o.S!ow:FJsta opci+n realiza un nue?o 2uego- perder todas las C!a'anas ganadasnrDesea continuarF - FMensa2e deC!a'anaF- Message8o8uttons.NesOo- Message8o%con.#arning // DialogHesult.Nes  (  bara2ar:;  inicializar:;  button4.Jnabled / true;  buttonK.Jnabled / true;

    timer).Jnabled / true;  >

      >  else  (  bara2ar:;

      inicializar:;  button4.Jnabled / true;  buttonK.Jnabled / true;  timer).Jnabled / true;  >  contardes!aser:;  ?eriRcar:;  > 

    pri?ate ?oid picture8o)IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try  (

      iB  :picture8o).8ac"ground%mage E/ null  (  picture8o).DoDragDrop:picture8o).Tag.ToString:- DragDropJects.Mo?e;  >  >  catc!

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    20/55

      ( > 

    label6.Tet/picture8o).Tag.ToString:;  >

      pri?ate ?oid picture8o4IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try  (  iB  :picture8o4.8ac"ground%mage E/ null  (

    picture8o4.DoDragDrop:picture8o4.Tag.ToString:- DragDropJects.Mo?e;>

      >  catc! ( > 

    >

      pri?ate ?oid picture8o)1IDragJnter:ob2ect sender- DragJ?ent=rgs e  (  e.Ject / DragDropJects.Mo?e;  >

      pri?ate ?oid picture8o)KIDragJnter:ob2ect sender- DragJ?ent=rgs e  (  e.Ject / DragDropJects.Mo?e;  >

      pri?ate ?oid picture8o)6IDragJnter:ob2ect sender- DragJ?ent=rgs e  (  e.Ject / DragDropJects.Mo?e;  >

      pri?ate ?oid picture8o3IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try (  iB  :picture8o3.8ac"ground%mageE/null  (

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    21/55

      picture8o3.DoDragDrop:picture8o3.Tag.ToString:- DragDropJects.Mo?e;>

      >  catc! ( >  >

      pri?ate ?oid picture8o6IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try  (  iB  :picture8o6.8ac"ground%mage E/ null  (  picture8o6.DoDragDrop:picture8o6.Tag.ToString:- DragDropJects.Mo?e;  >  >  catc! ( >  >

      pri?ate ?oid picture8o0IMouseDown:ob2ect sender- MouseJ?ent=rgs e

      (  try  (  iB  :picture8o0.8ac"ground%mage E/ null  (  picture8o0.DoDragDrop:picture8o0.Tag.ToString:- DragDropJects.Mo?e;  >  >  catc! ( >

    >

      pri?ate ?oid picture8o5IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (

      try  (  iB  :picture8o5.8ac"ground%mage E/ null  (  picture8o5.DoDragDrop:picture8o5.Tag.ToString:- DragDropJects.Mo?e;  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    22/55

      >  catc! ( >  >

      pri?ate ?oid picture8o1IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try  (  iB  :picture8o1.8ac"ground%mage E/ null  (  picture8o1.DoDragDrop:picture8o1.Tag.ToString:- DragDropJects.Mo?e;  >  >  catc! ( >  >

      pri?ate ?oid picture8oKIMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try

      (  iB  :picture8oK.8ac"ground%mage E/ null  (  picture8oK.DoDragDrop:picture8oK.Tag.ToString:- DragDropJects.Mo?e;  >  >  catc! ( >  >

      pri?ate ?oid picture8o

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    23/55

      >

      pri?ate ?oid picture8o)9IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try  (  iB  :picture8o)9.8ac"ground%mage E/ null  (  picture8o)9.DoDragDrop:picture8o)9.Tag.ToString:- DragDropJects.Mo?e;  >  >  catc! ( >  >

      pri?ate ?oid picture8o))IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try  (  iB  :picture8o)).8ac"ground%mage E/ null

      (  picture8o)).DoDragDrop:picture8o)).Tag.ToString:- DragDropJects.Mo?e;  >  >  catc! ( >  >

      pri?ate ?oid picture8o)4IMouseDown:ob2ect sender- MouseJ?ent=rgs e  (  try  (  iB  :picture8o)4.8ac"ground%mage E/ null  (

      picture8o)4.DoDragDrop:picture8o)4.Tag.ToString:- DragDropJects.Mo?e;  >  >  catc! ( >  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    24/55

      pri?ate ?oid picture8o)1IDragDrop:ob2ect sender- DragJ?ent=rgs e  (  iB  :picture8o)1.Tag//null  (  iB  :button3.Jnabled // Balse  (  button3.Jnabled / true;  >  des!aser,des- 9 / Fpicture8o)1F;  picture8o)1.Tag / e.Data.GetData:Data$ormats.Tet;  picture8o)1.%mage / new System.Drawing.8itmap:7at!.Combine:=pplication.Startup7at!- string.$ormat:F%magenes(9>F-"ipusbara2ado,int.7arse:picture8o)1.Tag.ToString:- K F.2pgF;  int pic / int.7arse:picture8o)1.Tag.ToString:;

    quitaimage:pic;  comprobar:;  >  >  protected ?oid quitaimage:int pic@A 7rocedimiento que quita los "ipus del tablero principal para asignarlo al tablero secundario de 3 "ipus  (

      iB  :picture8o).Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o)F;  des!aser,des- 4 / picture8o).Tag.ToString:;  iB  :des/4  (  des / des );  >  picture8o).8ac"ground%mage / null;  >  iB  :picture8o4.Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o4F;

      des!aser,des- 4 / picture8o4.Tag.ToString:;  iB  :des /4  (  des / des );  >  picture8o4.8ac"ground%mage / null;

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    25/55

      >  iB  :picture8o3.Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o3F;  des!aser,des- 4 / picture8o3.Tag.ToString:;  iB  :des /4  (  des / des );  >  picture8o3.8ac"ground%mage / null;

    >  iB  :picture8o6.Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o6F;  des!aser,des- 4 / picture8o6.Tag.ToString:;  iB  :des /4  (  des / des );  >

      picture8o6.8ac"ground%mage / null;  >  iB  :picture8oK.Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8oKF;  des!aser,des- 4 / picture8oK.Tag.ToString:;  iB  :des /4  (  des / des );  >  picture8oK.8ac"ground%mage / null;  >  iB  :picture8o1.Tag.ToString: // pic.ToString:

      (  des!aser,des- ) / Fpicture8o1F;  des!aser,des- 4 / picture8o1.Tag.ToString:;  iB  :des /4  (  des / des );

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    26/55

      >  picture8o1.8ac"ground%mage / null;  >  iB  :picture8o5.Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o5F;  des!aser,des- 4 / picture8o5.Tag.ToString:;  iB  :des /4  (  des / des );  >  picture8o5.8ac"ground%mage / null;  >  iB  :picture8o0.Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o0F;  des!aser,des- 4 / picture8o0.Tag.ToString:;  iB  :des /4  (

      des / des );  >  picture8o0.8ac"ground%mage / null;  >  iB  :picture8o

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    27/55

      (  des / des );  >  picture8o)9.8ac"ground%mage / null;  >  iB  :picture8o)).Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o))F;  des!aser,des- 4 / picture8o)).Tag.ToString:;  iB  :des /4  (  des / des );  >  picture8o)).8ac"ground%mage / null;  >  iB  :picture8o)4.Tag.ToString: // pic.ToString:  (  des!aser,des- ) / Fpicture8o)4F;  des!aser,des- 4 / picture8o)4.Tag.ToString:;

      iB  :des /4  (  des / des );  >  picture8o)4.8ac"ground%mage / null;  >  >

      pri?ate ?oid picture8o)KIDragDrop:ob2ect sender- DragJ?ent=rgs e  (  iB  :picture8o)K.Tag // null  (  iB  :button3.Jnabled // Balse

      (  button3.Jnabled / true;  >  des!aser,des- 9 / Fpicture8o)KF;  picture8o)K.Tag / e.Data.GetData:Data$ormats.Tet;

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    28/55

      picture8o)K.%mage / new System.Drawing.8itmap:7at!.Combine:=pplication.Startup7at!- string.$ormat:F%magenes(9>F-"ipusbara2ado,int.7arse:picture8o)K.Tag.ToString:- K F.2pgF;  int pic / int.7arse:picture8o)K.Tag.ToString:;  quitaimage:pic;  comprobar:;  >  >

      pri?ate ?oid picture8o)6IDragDrop:ob2ect sender- DragJ?ent=rgs e  (  iB  :picture8o)6.Tag // null  (  iB  :button3.Jnabled//Balse  (  button3.Jnabled / true;  >  des!aser,des- 9 / Fpicture8o)6F;  des!aser,des- ) / picture8o)6.Tag.ToString:;  picture8o)6.Tag / e.Data.GetData:Data$ormats.Tet;

      picture8o)6.%mage / new System.Drawing.8itmap:7at!.Combine:=pplication.Startup7at!- string.$ormat:F%magenes(9>F-"ipusbara2ado,int.7arse:picture8o)6.Tag.ToString:- K F.2pgF;  int pic / int.7arse:picture8o)6.Tag.ToString:;  quitaimage:pic;  comprobar:;  contardes!aser:;  >  >  pri?ate ?oid comprobar:@A 7rocedimiento que se encarga de comprobar las )K reglas para la obtenci+n de una c!a"ana  (  int imagen)- imagen4- imagen3-regla/9;  bool c!a / Balse;  iB  :picture8o)6.Tag E/ null UU picture8o)K.Tag E/ null UU picture8o)1.Tag E/ null

      (  imagen) / int.7arse:picture8o)6.Tag.ToString:;  imagen4 / int.7arse:picture8o)K.Tag.ToString:;  imagen3 / int.7arse:picture8o)1.Tag.ToString:;  iB  :"ipusbara2ado,imagen)- 9 // "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 // "ipusbara2ado,imagen)- 9  (

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    29/55

      iB  :"ipusbara2ado,imagen)- ) // "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) // "ipusbara2ado,imagen)- )  (  iB  :"ipusbara2ado,imagen)- 3 // "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 // "ipusbara2ado,imagen)- 3  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 E/ "ipusbara2ado,imagen3- 4  (

    c!a / true;  regla / );  >

      >  >  >  iB  :"ipusbara2ado,imagen)- 9 // "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 // "ipusbara2ado,imagen)- 9  (  iB  :"ipusbara2ado,imagen)- ) // "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) // "ipusbara2ado,imagen)- )  (  iB  :"ipusbara2ado,imagen)- 4 // "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 // "ipusbara2ado,imagen)- 4

      (  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3  (  regla / 4;  c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,imagen)- 9 // "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 // "ipusbara2ado,imagen)- 9  (

      iB  :"ipusbara2ado,imagen)- 3 // "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 // "ipusbara2ado,imagen)- 3  (  iB  :"ipusbara2ado,imagen)- 4 // "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 // "ipusbara2ado,imagen)- 4  (  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) E/ "ipusbara2ado,imagen3- )

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    30/55

      (  regla / 3;  c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,imagen)- ) // "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) // "ipusbara2ado,imagen)- )  (  iB  :"ipusbara2ado,imagen)- 3 // "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 // "ipusbara2ado,imagen)- 3  (  iB  :"ipusbara2ado,imagen)- 4 // "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 // "ipusbara2ado,imagen)- 4  (  iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen4- 9 E/ "ipusbara2ado,imagen3- 9  (  regla / 6;  c!a / true;

      >

      >  >  >  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) E/ "ipusbara2ado,imagen3- )  (  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3  (  iB  :"ipusbara2ado,imagen)- 4 // "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 // "ipusbara2ado,imagen)- 4  (

      iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen4- 9 E/ "ipusbara2ado,imagen3- 9  (  regla / K;  c!a / true;  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    31/55

      >  >  >  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) E/ "ipusbara2ado,imagen3- )  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 E/ "ipusbara2ado,imagen3- 4  (  iB  :"ipusbara2ado,imagen)- 3 // "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 // "ipusbara2ado,imagen)- 3  (  iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen4- 9 E/ "ipusbara2ado,imagen3- 9  (  regla / 1;  c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 E/ "ipusbara2ado,imagen3- 4  (  iB  :"ipusbara2ado,imagen)- ) // "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) // "ipusbara2ado,imagen)- )  (  iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen4- 9 E/ "ipusbara2ado,imagen3- 9

      (  regla / 5;  c!a / true;  >

      >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    32/55

      >  >  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 E/ "ipusbara2ado,imagen3- 4  (  iB  :"ipusbara2ado,imagen)- 9 // "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 // "ipusbara2ado,imagen)- 9  (  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) E/ "ipusbara2ado,imagen3- )  (  regla / 0;  c!a / true;  >

      >  >

      >  OVJW&S  iB  :"ipusbara2ado,imagen)- 9 // "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 // "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen4- 9 // "ipusbara2ado,imagen3- 9  (  iB  :"ipusbara2ado,imagen)- ) // "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) // "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) // "ipusbara2ado,imagen3- )  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen4- 4  (  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3

      (  regla /

      >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    33/55

      >  >  iB  :"ipusbara2ado,imagen)- 9 // "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 // "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen4- 9 // "ipusbara2ado,imagen3- 9  (  iB  :"ipusbara2ado,imagen)- 3 // "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 // "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 // "ipusbara2ado,imagen3- 3  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen4- 4  (  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) E/ "ipusbara2ado,imagen3- )  (  regla / )9;  c!a / true;  >

      >

      >  >  iB  :"ipusbara2ado,imagen)- 9 // "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 // "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen4- 9 // "ipusbara2ado,imagen3- 9  (  iB  :"ipusbara2ado,imagen)- 4 // "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 // "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 // "ipusbara2ado,imagen3- 4  (  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen4- )  (  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3

      (  regla / ));  c!a / true;  >

      >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    34/55

      >  >  iB  :"ipusbara2ado,imagen)- ) // "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) // "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) // "ipusbara2ado,imagen3- )  (  iB  :"ipusbara2ado,imagen)- 3 // "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 // "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 // "ipusbara2ado,imagen3- 3  (  iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen4- 9  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 E/ "ipusbara2ado,imagen3- 4  (  regla / )4;  c!a / true;  >

      >

      >  >  iB  :"ipusbara2ado,imagen)- ) // "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) // "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) // "ipusbara2ado,imagen3- )  (  iB  :"ipusbara2ado,imagen)- 4 // "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 // "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 // "ipusbara2ado,imagen3- 4  (  iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen4- 9  (  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3

      (  regla / )3;  c!a / true;  >

      >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    35/55

      >  >  iB  :"ipusbara2ado,imagen)- 3 // "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 // "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 // "ipusbara2ado,imagen3- 3  (  iB  :"ipusbara2ado,imagen)- 4 // "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 // "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 // "ipusbara2ado,imagen3- 4  (  iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen4- 9  (  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) E/ "ipusbara2ado,imagen3- )  (  regla / )6;  c!a / true;  >

      >

      >  >  iB  :"ipusbara2ado,imagen)- 3 E/ "ipusbara2ado,imagen4- 3 UU "ipusbara2ado,imagen3- 3 E/ "ipusbara2ado,imagen)- 3 UU"ipusbara2ado,imagen4- 3 E/ "ipusbara2ado,imagen3- 3  (  iB  :"ipusbara2ado,imagen)- 4 E/ "ipusbara2ado,imagen4- 4 UU "ipusbara2ado,imagen3- 4 E/ "ipusbara2ado,imagen)- 4 UU"ipusbara2ado,imagen4- 4 E/ "ipusbara2ado,imagen3- 4  (  iB  :"ipusbara2ado,imagen)- 9 E/ "ipusbara2ado,imagen4- 9 UU "ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen)- 9 UU"ipusbara2ado,imagen3- 9 E/ "ipusbara2ado,imagen4- 9  (  iB  :"ipusbara2ado,imagen)- ) E/ "ipusbara2ado,imagen4- ) UU "ipusbara2ado,imagen3- ) E/ "ipusbara2ado,imagen)- ) UU"ipusbara2ado,imagen4- ) E/ "ipusbara2ado,imagen3- )

      (  regla / )K;  c!a / true;  >

      >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    36/55

      >  >

      iB  :c!a  (  timer).Stop:;

      cronometro / 9;  c!ananas,cc!acanas- 9 / "ipusbara2ado,imagen)-K;  c!ananas,cc!acanas- ) / "ipusbara2ado,imagen4- K;  c!ananas,cc!acanas- 4 / "ipusbara2ado,imagen3- K;  c!ananas,cc!acanas- 3 / regla.ToString:F Tiempo* Fttcronometro.Tet;  "ipusbara2ado,imagen)- 6/F9F;  "ipusbara2ado,imagen4- 6/F9F;  "ipusbara2ado,imagen3- 6/F9F;

     iB  :cc!acanasec!as//45

      (  Message8o.S!ow:FConseguiste todas las C!a'anas- $JL%C%D=DJSF- FC!a'anaF- Message8o8uttons.&'-Message8o%con.Jclamation;

      ttcronometro.Tet / F9 seg.F;  >  else  (  Message8o.S!ow:FConseguiste una C!a'ana- sigue asíF- FC!a'anaF- Message8o8uttons.&'- Message8o%con.%nBormation;  ttcronometro.Tet / F9 seg.F;  timer).Start:;  >  try  (  picture8o)1.%mage / null;  picture8o)K.%mage / null;  picture8o)6.%mage / null;

      >  catc!  (

      >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    37/55

      picture8o)1.Tag / null;  picture8o)K.Tag / null;  picture8o)6.Tag / null;  cc!acanasec!as / cc!acanasec!as );  cc!acanas / cc!acanasec!as;  ttc!acanas.Tet / cc!acanasec!as.ToString:;

      des!aser,9- ) / FnadaF;  des!aser,)- ) / FnadaF;  des!aser,4- ) / FnadaF;

    nue?astres:;  iB :int.7arse:tt"ipus.Tet69  (  mazo.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!- string.$ormat:F%magenes(9>F- Fcartasm.pngF;  >  iB  :int.7arse:tt"ipus.Tet )9  (  mazo.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!- string.$ormat:F%magenes(9>F- FcartasB.2pgF;

      >  iB  :int.7arse:tt"ipus.Tet // 9  (  mazo.8ac"ground%mage / null;  >  des / 9;  n"ipus:;  >  else  (  Message8o.S!ow:FJsa no es una C!a'ana- prueba otra ?ezF- FC!a'anaF- Message8o8uttons.&'- Message8o%con.Jrror;  >  >  contardes!aser:;  >  protected ?oid n"ipus:@A 7rocedimeinto que cuenta la cantidad "ipus disponibles en el arreglo "ipusbara2ado  (  int c"ipus / 9;  Bor :int i / 9; i 0); i

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    38/55

      (  iB  :"ipusbara2ado,i-6//F)F  (  c"ipus / c"ipus );  >  >

      tt"ipus.Tet / c"ipus.ToString:;  >  protected ?oid nue?astres:@A 7rocedimeinto que toma tres "ipus nue?os cuando se consigue una c!a"ana  (  Boreac!:Control cComprobar in group8o).Controls  (  iB  :cComprobar is 7icture8o  (  iB :cComprobar.8ac"ground%mage//null  (  int car / @);  do  (

      car / car );  > w!ile :"ipusbara2ado,car- 6 // F9F UU car09;  iB  :car 0)  (  iB  :"ipusbara2ado,car- 6 // F)F  (  iB  :cComprobar.Tag E/ null  (  iB  :cComprobar.Tag.ToString: E/ car.ToString:  (  cComprobar.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!-string.$ormat:F%magenes(9>F- "ipusbara2ado,car- K F.2pgF;  cComprobar.Tag / car;  "ipusbara2ado,car- 6 / F9F;  >  else  (  "ipusbara2ado,car- 6 / F9F;  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    39/55

      >  else  (  cComprobar.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!-string.$ormat:F%magenes(9>F- "ipusbara2ado,car- K F.2pgF;  cComprobar.Tag / car;

      "ipusbara2ado,car- 6 / F9F;  >  >

     

    >

     >

      >

      >  n"ipus:;  >

      pri?ate ?oid ?eriRcar:@A 7rocedimiento que recorre los )4 "ipus ubicados en el tablero principal y determina si eiste una c!a"ana posible.  (  bool c!a / Balse;  Boreac! :Control cComprobar in group8o).Controls  (  iB  :cComprobar is 7icture8o  (  iB  :cComprobar.8ac"ground%mage E/ null  (  Boreac! :Control cComprobar4 in group8o).Controls  (  iB  :cComprobar4 is 7icture8o

      (  iB  :cComprobar4.8ac"ground%mage E/ null UU cComprobar4.Oame.ToString:E/cComprobar.Oame.ToString:  (  Boreac! :Control cComprobar3 in group8o).Controls  (  iB  :cComprobar3 is 7icture8o

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    40/55

      (  iB  :cComprobar3.8ac"ground%mage E/ null UU cComprobar3.Oame.ToString: E/ cComprobar4.Oame.ToString:  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9  (

      iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (

      c!a / true;>

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    41/55

    "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4

      (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3  (

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    42/55

      iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/

    "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/ "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/ "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) E/ "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (

      iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9  (

    c!a / true;  >

      >  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    43/55

      >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/ "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/ "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) E/ "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/

    "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- )  (

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    44/55

      iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9  (

    c!a / true;

      >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4

      (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (

    c!a / true;  >

      >  >  >  OVJW&S

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    45/55

      iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) //

    "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) //"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    46/55

      (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 // "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 //

    "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (

    c!a / true;  >

      >  >  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    47/55

      iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 //

    "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 //"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) // "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    48/55

      (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (

    c!a / true;  >

      >  >  >  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 // "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 // "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 // "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 //"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 //

    "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (

    c!a / true;  >

      >  >  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    49/55

      iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:-3 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 3 UU"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 3 E/ "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 3  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4 E/

    "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 4 UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 4 E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 4  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 9 UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- 9 E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- 9  (  iB  :"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- ) UU "ipusbara2ado,int.7arse:cComprobar4.Tag.ToString:- ) E/"ipusbara2ado,int.7arse:cComprobar3.Tag.ToString:- )  (

    c!a / true;  >

      >  >  >  OVJW&S

      >  >  >

      >  >  >

      >  >

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    50/55

      >  iB  :c!a//Balse  (  Message8o.S!ow:FOo !ay C!a'anas posiblesF;  >  >

      pri?ate ?oid button4IClic":ob2ect sender- J?ent=rgs e  (  des!aser,9- ) / FnadaF;  des!aser,)- ) / FnadaF;  des!aser,4- ) / FnadaF;  des / 9;  iB  :tt"ipus.Tet E/ F9F  (  Boreac! :Control cComprobar in group8o).Controls  (  iB  :cComprobar is 7icture8o  (  iB  :cComprobar.8ac"ground%mage E/ null

      (  "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:- 6 / F)F;

      >  >  >  iB  :picture8o)1.%mageE/null  (  "ipusbara2ado,int.7arse:picture8o)1.Tag.ToString:- 6 / F)F;  picture8o)1.%mage / null;  picture8o)1.Tag / null;  >  iB  :picture8o)K.%mageE/null  (

      "ipusbara2ado,int.7arse:picture8o)K.Tag.ToString:- 6 / F)F;  picture8o)K.%mage / null;  picture8o)K.Tag / null;  >  iB  :picture8o)6.%mage E/ null

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    51/55

      (  "ipusbara2ado,int.7arse:picture8o)6.Tag.ToString:- 6 / F)F;  picture8o)6.%mage / null;  picture8o)6.Tag / null;  >

      ListintA numeros / new ListintA:;  Handom rnumero / new Handom:;  string,- "ipusbara2ado4 / new string,0)- 1;  w!ile :numeros.Count / 09  (  int num / rnumero.Oet:9- 0K;  iB  :num / 09  (  iB  ::Enumeros.Contains:num  (  numeros.=dd:num;  >  iB  :numeros.Count // 09

      (  Bor :int 2 / 9; 2 0); 2  (  iB  ::Enumeros.Contains:2  (  numeros.=dd:2;  >  >  >  >  >  int car / @);

      Boreac! :Control cComprobar in group8o).Controls

      (  iB  :cComprobar is 7icture8o  (  do  (

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    52/55

      car / car );  > w!ile :"ipusbara2ado,numeros,car- 6 // F9F;  iB  :cComprobar.Tag E/ null  (  bool repe;  do

      (  repe/ Balse;  iB  :car09  (  car / car );  >  Boreac! :Control cComprobar4 in group8o).Controls  (  iB  :cComprobar4 is 7icture8o  (  iB  :cComprobar4.Tag.ToString: // numeros,car.ToString:  (  repe / true;

      >  >  >  > w!ile :repe // true;  iB  :repe//Balse  (  cComprobar.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!-string.$ormat:F%magenes(9>F- "ipusbara2ado,numeros,car- K F.2pgF;  cComprobar.Tag / numeros,car;  "ipusbara2ado,numeros,car- 6 / F9F;  car / car );

    >  else  (

      "ipusbara2ado,numeros,car- 6 / F9F;  >  >  else  (

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    53/55

      cComprobar.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!-string.$ormat:F%magenes(9>F- "ipusbara2ado,numeros,car- K F.2pgF;  cComprobar.Tag / numeros,car;  "ipusbara2ado,numeros,car- 6 / F9F;  car / car );  >

     >

      >  n"ipus:;  >  else  (  Message8o.S!ow:FOo eisten ms "ipus disponiblesF- F=?iso @ C!a'anaF- Message8o8uttons.&'- Message8o%con.=steris";  >  contardes!aser:;  ?eriRcar:;  >

      pri?ate ?oid button3IClic":ob2ect sender- J?ent=rgs e@A 7roceso del bot+n des!acer  (  contardes!aser:;  int desc/9;  iB  :button3.TetE/FDes!acer :9F  (  iB  :button3.Tet // FDes!acer :)F  (  desc / 9;  >  iB  :button3.Tet // FDes!acer :4F  (  desc / );  >  iB  :button3.Tet // FDes!acer :3F  (  desc / 4;  >  iB  :des!aser,desc- 9.ToString: // Fpicture8o)1F

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    54/55

      (  picture8o)1.%mage / null;  picture8o)1.Tag / null;  >  iB  :des!aser,desc- 9.ToString: // Fpicture8o)KF  (

      picture8o)K.%mage / null;  picture8o)K.Tag / null;  >  iB  :des!aser,desc- 9.ToString: // Fpicture8o)6F  (  picture8o)6.%mage / null;  picture8o)6.Tag / null;  >  Boreac! :Control cComprobar in group8o).Controls  (  iB  :cComprobar is 7icture8o  (  iB  :cComprobar.Oame.ToString://des!aser,desc-).ToString:

      (  "ipusbara2ado,int.7arse:cComprobar.Tag.ToString:-6/ F)F;  cComprobar.8ac"ground%mage / System.Drawing.8itmap.$rom$ile:7at!.Combine:=pplication.Startup7at!-string.$ormat:F%magenes(9>F- "ipusbara2ado,int.7arse:des!aser,desc- 4.ToString:- K F.2pgF;  >  >  >  des / des @ );  iB  :des A 9  (  des!aser,desc- ) / FnadaF;  des / des @ );  >  iB  :des//9

      (  des!aser,desc- ) / FnadaF;

    >  >  contardes!aser:;

  • 8/15/2019 Procedimientos y Algoritmos Programados Juego ChaKana

    55/55

      >

      pri?ate ?oid button6IClic":ob2ect sender- J?ent=rgs e@A 7roceso del bot+n ayuda  (  System.Diagnostics.7rocess proc / new System.Diagnostics.7rocess:;  proc.Start%nBo.$ileOame / 7at!.Combine:=pplication.Startup7at!- string.$ormat:FDoc(9>F- Fayuda.pdBF;

      proc.Start:;  proc.Close:;  >

      pri?ate ?oid buttonKIClic":ob2ect sender- J?ent=rgs e@A 7roceso del bot+n ?er c!a"anas  (  ?c!acanas Borc!acanas / new ?c!acanas:c!ananas;  Borc!acanas.S!ow:;  >

      pri?ate ?oid timer)ITic":ob2ect sender- J?ent=rgs e@A 7roceso que cuenta los segundos transcurridos.  (  cronometro;

      iB :cronometro)9  (  ttcronometro.Tet / F9F  cronometro.ToString:F Seg.F;  >

    else  (  ttcronometro.Tet / cronometro.ToString: F Seg.F;  >  >

     >

    >