python如何用类的方法设置一个剪刀石头布的程序,三局两胜制?

python如何用类的方法设置一个剪刀石头布的程序,三局两胜制?,第1张

这个问题很简单

如果你是要和程序玩石头剪刀布的话

可以先设置随机数(import random)

然后使用randint,随机一个1~3之间的整数,姑且叫a

1--石头

2--剪刀

3--布

然后使用input,输入1~3之间的整数,姑且叫inputnum

由于输入的是字符串,那么我们int(inputnum)

这样我们得到了一个整数inputnum

使用if-elif语句

判断a和inputnum的关系

做出相应的回答

然后第二步

定义变量flagA 判断程序赢的次数,在上面的if语句中写上flagA的自增

给它一个初始值0——flagA=0

定义变量flagB 判断自己赢的次数,在上面的if语句中写上flagB的自增

给它一个初始值0——flagB=0

大概思路就是这样,不知道能不能看懂,本人表达能力不好,望见谅

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

int main(void)

{

char player

char computer

srand ((unsigned)time(NULL))// 随机数种子

while(1)

{fflush(stdin)

printf("欢迎来到猜拳小游戏,请选择你要出的手势:\n")

printf("a剪刀\nb石头\nc布\n")

scanf("%c",&player)

if (player==65 || player==97)printf("你出了剪刀,")

else if (player==66 || player==98)printf("你出了石头,")

else if (player==67 || player==99)printf("你出了布,")

else printf("输入错误,请重试:\n")

if(player>67)player-=32

computer = rand()%3+1// 产生随机数,得到电脑出拳

printf("电脑出了")

switch (computer)

{

case 1:printf("剪刀\n")break

case 2:printf("石头\n")break

case 3:printf("布\n")break

}

if (player==65 &&computer==3)//剪刀——布

printf("你赢了!\n")

else if (player==66 &&computer==1)//石头——剪刀

printf("你赢了!\n")

else if (player==67 &&computer==2)//布——石头

printf("你赢了!\n")

else if (player==67 &&computer==1)//布——剪刀

printf("电脑赢了!\n")

else if (player==65 &&computer==2)//剪刀——石头

printf("电脑赢了!\n")

else if (player==66 &&computer==3)//石头——布

printf("电脑赢了!\n")

else if (player==65 &&computer==1)//都出剪刀

printf("平手!\n")

else if (player==66 &&computer==2)//都出石头

printf("平手!\n")

else if (player==67 &&computer==3)//都出布

printf("平手!\n")

printf("\n")

}

return 0

}

#include <stdio.h>

#include <iostream>

#include <time.h>

int getrand()

{

//srand((unsigned)time(NULL))

return rand()%3

}

int win(int me,int cpu)

{

if(me==2&&cpu==0)

return -1

else if (me==0&&cpu==2)

return 1

else if(me==cpu)

return 0

else if(me>cpu)

return 1

else

return -1

}

int exchange(char input)

{

int i=0

switch(input) {

case 'S':

case 's':

i = 2

break

case 'p':

case 'P':

i = 1

break

default:

i = 0

}

return i

}

int main(void)

{

char c='a'

char msg[3][10] = {"rock","paper","scissors"}

int me,cpu

while(1){

printf("Enter R(ock), P(aper), or S(cissors)> ")

flushall()

scanf("%c",&c)

if(c=='q'||c=='Q') break

me = exchange(c)

cpu = getrand()

printf("You played %s.\n",msg[me])

printf("The computer played %s.\n",msg[cpu])

if(win(me,cpu)==1)

printf("You win!\n")

else if(win(me,cpu)==-1)

printf("The computer win!\n")

else

printf("Go go go!\n")

}

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11144456.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-13
下一篇2023-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存