1 const readline = require('readline-sync')//引用readline-sync
2 console.log('欢迎进入猜拳游戏');
3 //电脑随机出拳
4 let fn = function (min, max) {
5 if (!max) {//当max没有值时
6 max = min;
7 min = 0;
8 }
9 if (min < max) {
10 return parseInt(Math.random() * (max - min + 1) + min);
11
12 } else {
13 return parseInt(Math.random() * (min - max + 1) + max);
14 }
15 }
16 //玩家选择出拳
17 let menu = function () {
18 while (true) {
19 console.log('请玩家出拳:1.石头 2.剪刀 3.布 4.退出');
20 let num = readline.question() - 0;
21 switch (num) {
22 case 4:
23 console.log('再见,欢迎下次');
24 return;
25 }
26 let num1 = fn(1, 3)
27 if (num == num1) {
28 if (num == 1) {//平局
29 console.log('玩家出拳:石头。。。。电脑出拳:石头\n 平局');
30 } else if (num == 2) {
31 console.log('玩家出拳:剪刀。。。。电脑出拳:剪刀\n 平局');
32 } else {
33 console.log('玩家出拳:布。。。。电脑出拳:布\n 平局');
34 }
35 } else if (num == 1 && num1 == 2 || num == 2 && num1 == 3 || num == 3 && num1 == 1) {
36 if (num == 1 && num1 == 2) {
37 console.log('玩家出拳:石头。。。。电脑出拳:剪刀\n 玩家胜利');
38 } else if (num == 2 && num1 == 3) {
39 console.log('玩家出拳:剪刀。。。。电脑出拳:布\n 玩家胜利');
40 } else {
41 console.log('玩家出拳:布。。。。电脑出拳:石头\n 玩家胜利');
42 }
43 } else {
44 if (num == 1 && num1 == 3) {
45 console.log('玩家出拳:石头。。。。电脑出拳:布\n 电脑胜利');
46 } else if (num == 2 && num1 == 1) {
47 console.log('玩家出拳:剪刀。。。。电脑出拳:石头\n 电脑胜利');
48 } else {
49 console.log('玩家出拳:布。。。。电脑出拳:剪刀\n 电脑胜利');
50 }
51 }//结束
52 }
53 }
54 menu();