Đề bài : ThucHanh04b_Ham.pdf
Sử dụng hàm đổ xúc xắc ở Thực hành 4b - Bài 2 để viết trò chơi xúc xắc như sau. Hai người chơi lần lượt đổ 2 xúc xắc cùng lúc, tổng điểm được cộng dồn vào cho mỗi người chơi. Người có tổng điểm nhỏ hơn sẽ đổ tiếp. Ai có tổng điểm nhỏ hơn trước thì thắng.
Ví dụ :
2 xuc xac nguoi choi 1 : 2 5 Tong nguoi 1 : 7
2 xuc xac nguoi choi 2 : 4 1 Tong nguoi 2 : 5
2 xuc xac nguoi choi 2 : 5 6 Tong nguoi 2 : 16
2 xuc xac nguoi choi 1 : 2 1 Tong nguoi 2 : 10
Chú ý tổng điểm ko bao giờ được vượt quá 100. Nếu đổ xúc xắc mà tổng điểm vượt 100 thì ko được tính và đổi lượt và đổi lượt cho người kia.
----------------------------------------------------------------------------------------
Code : http://pastebin.com/kALhKnXM hoặc thuchanh4b-bai3.cpp
----------------------------------------------------------------------------------------
#include <iostream>
using namespace std;
int doxx()
{
return (rand()%6 + 1);
}
int cong(int& nguoichoi,int a, int b)
{
nguoichoi += a+b;
return nguoichoi;
}
int tru(int& nguoichoi,int a, int b)
{
nguoichoi -= (a+b);
return nguoichoi;
}
int main ()
{
srand(time(0));
int nguoi[3] ={0};
int do1, do2;
int i=1, j=2;
while ( nguoi[i]!=100 && nguoi[j]!=100 )
{
do1= doxx(); do2= doxx();
if ( cong(nguoi[i],do1,do2)>100 )
{
tru(nguoi[i],do1,do2) ;
}
cout << "2 xuc xac Nguoi choi " << i << " : " << do1 << " " << do2
<<" | Tong nguoi choi " << i <<": " << nguoi[i]<< endl;
do1= doxx(); do2= doxx();
if ( cong(nguoi[j],do1,do2)>100 )
{
tru(nguoi[j],do1,do2) ;
}
cout << "2 xuc xac Nguoi choi " << j << " : " << do1 << " " << do2
<<" | Tong nguoi choi " << i << ": " << nguoi[j]<<endl;
if ( nguoi[i] > nguoi[j] )
{
int tam;
tam = i;
i = j;
j = tam;
}
}
if ( nguoi[i]==100 ) cout << "Nguoi choi " << i << " chien thang!" << endl;
if ( nguoi[j]==100 ) cout << "Nguoi choi " << j << " chien thang!" << endl;
system("pause");
return 0;
}