Lập trình trò chơi đổi màu bi trong Pascal

Chủ nhật - 09/08/2020 10:15
Trên bàn có n1 hòn bi xanh, n2 hòn bi đỏ, n3 hòn bi vàng. Một người tham gia vào một trò chơi sau:- Cứ 2 viên bi khác màu chạm vào sẽ biến thành màu thứ 3.- Người thắng cuộc là người biến được tất cả các hòn bi đó về màu đỏ. Hãy lập trình để máy chơi được trò chơi trên với khả năng cao nhất.
■ Hướng dẫn:
- Ta có thể giải bài toán tổng quát hơn là biến số bi ban đầu là (g,y,r) thành số bi cuối cùng là (new,newg,newr).
- Để ý rằng tổng số là không đổi /à sau mỗi nước đi hiệu số của hai đống bi khác màu phải chia hết cho 3.
Sau đây là chương trình chi tiết thể hiện bằng PASCAL.

PROGRAM BAI39
USES CRT;
VAR r, g, y, newr, newg, newy, cl, c2, c3, ml, m2, m3:
Integer, i, min: Byte;
PROCEDURE XUAT;
BEGIN
      Textcolor(Green);Gotoxy(3,5);Write(g);
      Textcolor(Yellow);Gotoxy(13,5);Write(y);
      Textcolor(Red);Gotoxy(23,5);Write(r);
      c1 : = g-y;
      c2 : = y-r;
      c3 : = r-g;
      Delay(100);
      Readln;
END;
PROCEDURE RA_DO;
BEGIN
      {Xuat ra Man Hinh}
       Clrscr;
       Gotoxy(20,20);
       Writeln(‘Lay bi xanh chap voi bi vang');
       Dec(y);
       Dec(g);
       r : = r+2;
       xuat;
END;
PROCEDURE RA_VANG;
BEGIN
     Clrscr
     Gotoxy(20,20);
     WriteIn(‘Lay bi xanh chap voi bi do’);
     Dec(g);
     Dec(r);
     y: = y+2;
     Xuat;
END;
PROCEDURE RA_XANH;
BEGIN
     Clrscr
     Gotoxy(20,20);
     Writeln(‘Lay bi vang chap voi bi do’);
     Dec(y);
     Dec(r);
     g : = g+2;
     Xuat;
END;
FUNCTION OK_TEST : Boolean;
BEGIN
     Ok_Test : = true;
     If (((m1 mod 3)+3) mod 3 < > ((c1 mod 3)+3) mod 3) then
     Ok_Test : = false;
     If (((m2 mod 3)+3) mod 3 < > ((c2 mod 3)+3) mod 3) then
     Ok_test: = false;
     If (((m3 mod 3)+3) mod 3 < > ((c3 mod 3)+3) mod 3) then
     Ok_test : = false;
     {Phai kiem tra nhu the nay boi vi (-1 mod 3 = -1 < > 2)}
END;
PROCEDURE CA_KHEO;
BEGIN
      Repeat
           Ra_Xanh;
           Ra_Vang;
       Until g=Newg;
END
BEGIN
      Clrscr;
      Writeln(‘Nhap so bi xanh, vang, do');
      Readln(g,y,r);
      Writeln(‘Can bien ra nhu the nao’):
      Readln(new,newy,newr);
      Xuat;
      m1: = newg-newy;
      mw: - newy-newr;
      m3,: - newr-newg;
      If Ok_test then
          Begin
               Repeat
                          If c1 < m1 then Ra_Xanh;
                          If c1 > m1 then Ra_Vang;
               Until c1 = m1;
               If g > newg then
                         Repeat
                              Ra_Do;
                         Until g=newg;
                If g < newg then Ca_kheo;
            End;
        Else
            Writeln(‘Khong lam duoc’);
        Readln;
END.

  Ý kiến bạn đọc

THÀNH VIÊN

Hãy đăng nhập thành viên để trải nghiệm đầy đủ các tiện ích trên site
Kênh Bóng đá trực tiếp hôm nay miễn phí ⇔ Kênh 90Phut TV full HD ⇔ 888new ⇔ 69VN ⇔ HM88 ⇔ F168 ⇔ 123b ⇔ 566 ⇔ Vmax ⇔ 78Win ⇔ https://xn88.bio/ ⇔ GK88 ⇔ SHBET ⇔ 78win ⇔ u888 ⇔ 66b ⇔ fo88vic88 ⇔ u888 ⇔ 888p ⇔ 69vn ⇔ BL555 ⇔ 99OK ⇔ f168 ⇔ Link MB66 ⇔ mv66af88 ⇔ 8x bet ⇔ 88AA ⇔ 789BET ⇔ LC88 ⇔ BL555 ⇔ 789f ⇔ 999slot ⇔ 789F ⇔ MB66 ⇔ 8xbet ⇔ https://789betcom0.com/ ⇔ https://hi88.baby/ ⇔ 789BET ⇔ au88 ⇔ go8 ⇔ https://xx88.ink/ ⇔ zo88 ⇔ ev99 ⇔ 888b ⇔ go88 ⇔ kèo nhà cái ⇔ cm88 ⇔ 88aa ⇔ Kkwin ⇔ tv88 ⇔ 89bet ⇔ mb66.racing ⇔ 88go ⇔ FO88 ⇔ 88xx ⇔ 188v ⇔ f168 ⇔ QQ88 ⇔ bk8 ⇔ bk8 ⇔ 99ok ⇔ f168 ⇔ iwinclub ⇔ vn88 ⇔ 69vn ⇔ m88 ⇔ 56win ⇔ P3 ⇔ 8s ⇔ RWIN ⇔ SHBET ⇔ kubet ⇔ 888new ⇔ BL555 ⇔ hi88 ⇔ https://fun88.social/ ⇔ thabet ⇔ SV88 ⇔ https://vnalo789c.com/ ⇔ https://qq88.fun/888New daga ⇔ SHBET ⇔ keo nha cai ⇔ bl-555.site ⇔ https://bshbet.com/ ⇔ https://uk88.rocks ⇔ kkwin ⇔ KUWIN ⇔ 8xbet ⇔ RR88 ⇔ 188v ⇔ mb6678win ⇔ https://hello8880.net/ ⇔ tv88UU88 ⇔ HM88 ⇔ mb 66 ⇔ TV88 ⇔ NOHU ⇔ 77ball ⇔ 32win ⇔ Kuwin ⇔ ek333 ⇔ xoso66 ⇔ nổ hũ ⇔ SUN WIN ⇔ X88 ⇔ 78win ⇔ Jun88 ⇔ uu88 ⇔ 6FF ⇔ 88i ⇔ KINGFUN ⇔ https://789club24.com/ ⇔ https://98winlive.com/ ⇔ Game bài đổi thưởng ⇔ https://bet88yk.com/ ⇔ https://alo789apk.app/ ⇔ https://33win100.com/ ⇔ https://u888ny.com/ ⇔ alo789 ⇔ OK8386 ⇔ x88 ⇔ SHBET ⇔ https://hi88.voyage/ ⇔ https://79kings.blue/ ⇔ https://dom88.jp.net/ ⇔ https://hello880.net/ ⇔ https://789club60.com/ ⇔ https://blc88.net/ ⇔ 23win ⇔ 6ff ⇔ uu88 ⇔ xoso66 ⇔ bomwin ⇔ nhatvip ⇔ https://789club24.com/ ⇔ 789 bet ⇔ dola789 ⇔ 8xbet ⇔ 78win ⇔ QQ88 ⇔ XX88 ⇔ ev99 ⇔ 69vn ⇔ rr88 ⇔ rr88 ⇔ Uu88 ⇔ win456 ⇔ Tài xỉu online ⇔ XN88 ⇔ https://33win101.com/ ⇔ oxbet ⇔ Slot365 ⇔ 78wind.com ⇔ bet88 ⇔ XX88 ⇔ VN88 ⇔ 789BET ⇔ OKFUN ⇔ ee88 ⇔ 12bet ⇔ hitclub ⇔ Kkwin ⇔ VankhanhTV ⇔ XN88 ⇔ 3WIN ⇔ WIN678 ⇔ KUWIN ⇔ 58WIN ⇔ 68 game bàiEE88 ⇔ https://taixiu88.pro/ ⇔ 888new.lol ⇔ ok9 football ⇔ K8CC ⇔ https://hi88o.com/ ⇔ https://hi88.gives/ ⇔ https://qq88.co.com/ ⇔ 68 game bài ⇔ 8xbet ⇔ https://shbetk.net/ ⇔ RIKVIP ⇔ rikvip ⇔ https://mm88.us.com/ ⇔ 79king ⇔ ww88 ⇔ https://78win.bot/ ⇔ https://13win.vegas/ ⇔ https://lc88o.com/ ⇔ https://hi88.uno/ ⇔ https://58win1.info/ ⇔ j88 ⇔ j88 ⇔ 69vn ⇔ Slot365 ⇔ alo88 ⇔ UU88 ⇔ 32 win ⇔ 888TO ⇔ wstar77 ⇔ 73bet ⇔ 888b ⇔ 11uu ⇔ 78win ⇔ Slot365 ⇔ 789f ⇔ mv88 ⇔ 789f ⇔ Bsport ⇔ 888New ⇔ EV99 ⇔ u88 ⇔ sunwin ⇔ tỷ lệ kèo nhà cái hôm nay ⇔ BIN88 ⇔ https://f8bet0.world ⇔ https://qq88.studio/ ⇔ https://nh8811.com/ ⇔ Leo88 ⇔ 78win ⇔ EV99 ⇔ 3win ⇔ https://cakhiatv88.net/ ⇔ 7m ⇔ i9 Bet ⇔ hi88 ⇔ 888To ⇔ 789pu.comhi88 ⇔ au88 EV99 ⇔ socolive ⇔ bet88 ⇔ 555WIN ⇔ https://au88.black/ ⇔ trực tiếp bóng đá ⇔ https://king88clb.com/ ⇔ https://f168hi.com/ ⇔ sv66ax88 ⇔ 88clb ⇔ Nn88 ⇔ https://32win.vc/ ⇔ 888new ⇔ PG88 ⇔ PG88 ⇔ EE88 ⇔ SanClub ⇔ F168 ⇔ QQ88 ⇔ hb88 ⇔ Vin777 ⇔ SV388 ⇔ MV66 ⇔ 23WIN ⇔ https://vankhanhtvv.com/ ⇔ Nhà Cái LC88 ⇔ https://789fnew.com/ ⇔ https://u888lm.com/ ⇔ https://sv66.coupons/ ⇔ https://f168.tech/ ⇔ https://8kbetbh.com/ ⇔ https://ta88club.kim/ ⇔ socolivemv88 ⇔ https://rr88.com.se/ ⇔ https://bet168.com.co/ ⇔ https://8kbet.co/ ⇔ https://888b-link.cc/ ⇔ https://sunwinn.deal/ ⇔ 88gokingfun ⇔ https://bong88vn.wiki/ ⇔ SHBET ⇔ https://shbet.racing/ ⇔ RR99 ⇔ U888 ⇔ OK8386 ⇔ Mv88 ⇔ MM88 ⇔ 33win ⇔ BL555 ⇔ 69vn ⇔ hi88com ⇔ https://w88link1.com/ ⇔ xocdia88 ⇔ 77ball ⇔ vuabet88 ⇔ betvisa https://fun88link0.com/ ⇔ https://fun88link1.com/ ⇔ https://188betlink0.com/ ⇔ https://188betlink1.com/ ⇔ https://188betlink2.com/ ⇔ https://w88link0.com/ ⇔ thabet ⇔ 888P ⇔ 11UU ⇔ EV88 ⇔ 789F ⇔ 69vn77win ⇔ xx88 ⇔ 78win ⇔ https://okfun.bz/ ⇔ https://daga88.beer/ ⇔ QQ88 ⇔ https://i9betz4.com/ ⇔ Kuwin ⇔ w88link2.com ⇔ w88link3.com ⇔ 32WIN ⇔ https://8dayvip.mobi/ ⇔ https://8dayvip.com/ ⇔ 86bet ⇔ t88 ⇔ af88 ⇔ U888 ⇔ 86bet ⇔ https://pg99yk.com/ ⇔ https://u888wl.com/ ⇔ 89bet ⇔ 888new ⇔ 88AA ⇔ GK88 ⇔ 78win01 ⇔ GO99 ⇔ BET88 ⇔ 99win ⇔ TT88 ⇔ https://8kbettt.com/ ⇔ https://86bet.tech/ ⇔ https://789betca.com/ ⇔ https://fly88.gifts/ ⇔ lc88 ⇔ VN88 ⇔ 69vn ⇔ nh88 ⇔ vn88 ⇔ Tv88 ⇔ 88vv ⇔ sv388 ⇔ KWIN ⇔ tỷ lệ kèo nhà cái 88 ⇔ PG66 ⇔ 68win ⇔ BL555SV388 ⇔ SHBET ⇔ hitclub ⇔ MAX79 ⇔ UU88 ⇔ HM88 ⇔ TV88 ⇔ https://bet88.ventures/ ⇔ bongdalu22.com ⇔ zx88 ⇔ ev99 ⇔ 8s ⇔ bet8s ⇔ QQ88 ⇔ https://f168.name/ ⇔ https://13wincom.io/ ⇔ Nhà cái vn88 ⇔ Nhà Cái QQ88 ⇔ https://fb888.in.net/ ⇔ https://kjc.ac/ ⇔ https://onbet.in.net/ ⇔ link vn88 ⇔ HZ88 ⇔ http://58win.trading/ ⇔ https://qq88.gives/ ⇔ bong88 ⇔ sky88 ⇔ Cổng game rikvip ⇔ ev99 ⇔ 79KING ⇔ Bet88 ⇔ XN88 ⇔ i9bet ⇔ VN23 ⇔ https://kkwin.fan/ ⇔ https://555win.bike/ ⇔ https://f8bet.courses/ ⇔ https://go8play.com/ ⇔ https://lc88.bar/ ⇔ 789f ⇔ abc8 ⇔ good88 ⇔ 789win ⇔ Hitclub ⇔ https://f8bet80.one/ ⇔ lương sơn tv ⇔ vwin ⇔ sut88 ⇔ vua88 ⇔ hb88 ⇔ https://okfun.center/ ⇔ 68win ⇔ LC88 ⇔ 79king ⇔ https://hi88.tours/ ⇔ https://ok9.charity/ ⇔ https://kkwin68.info/ ⇔ https://ee88com.me/ ⇔ https://new88blog.org ⇔ nổ hũ ⇔ https://uu88vn.com ⇔ nhà cái LC88 ⇔ nohu ⇔ lc88 com ⇔ 69VN ⇔ Ok365 ⇔ 6FF ⇔ Nohu90 ⇔ go8 ⇔ 22vip ⇔ af88 ⇔ 86bet ⇔ five88 ⇔ 68win ⇔ 11uu ⇔ https://go8.beer/ ⇔ đánh bài tiến lên ⇔ sin88 ⇔ 9win ⇔ 88i ⇔ https://u888.ac/ ⇔ https://king88com.uk.net/ ⇔ https://shbet.gg/ ⇔ LC88 ⇔ OKKING ⇔ 13win ⇔ https://88fc0.com/ ⇔ abc8 ⇔ U888 ⇔ https://s666.garden ⇔ https://fly88.select/ ⇔ https://bk8co.net/ ⇔ bet88 ⇔ F168 ⇔ https://qq8876.net/ ⇔ hi88s com ⇔ f168 ⇔ https://88xx.mobi/ ⇔ bet88 ⇔ 88clb ⇔ GO8 ⇔ https://qq88.social/ ⇔ LC88 ⇔ https://j88vm.com/ ⇔ https://78winvina.com/ ⇔ https://luongson161.tv/ ⇔ https://okfun.cfd/ ⇔ https://keonhacai.deals/ ⇔ https://j88com.today/ ⇔ 28bet ⇔ MB66 ⇔ https://mk8th.net/ ⇔ https://58win.faith/ ⇔ Jun88 ⇔ 188v ⇔ https://s8.surf/ ⇔ https://jun88.school/ ⇔ https://qq887p.com/ ⇔ https://hi88.biz/ ⇔ https://mk8.ac/ ⇔ 78win ⇔ https://savinovineyards.com/ ⇔ SHBET ⇔ x88 ⇔ https://mb668.co/ ⇔ https://f168.law/ ⇔ https://saobet.shop/ ⇔ win678 ⇔ https://8kbetnh.com/ ⇔ https://j8kbet.com/ ⇔ 33win ⇔ https://xx88tv.com/ ⇔ i9 Bet ⇔ kèo nhà cái ⇔ S666 ⇔ BL555 ⇔ max79 ⇔
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây