作者:梁 蓉
猜拳游戏大概解释:
搜集齐数据框,for循环在三个随机数里抽俩个,抽出的数据放回,继续抽取剪刀石头布,机器人出剪刀石头布,我出对应压制机器人的方法来赢取胜利,我给机器人发出出拳吧的命令,胜负表里就能收到我想让机器人赢还是我赢的命令,当我给出命令胜负表得出结果。
具体解释:
shoujiqi<-data.frame(a=NA,b=NA) #搜集齐数据集
for(i in 1:50){ #for循环在1——50
sample(c("jian","shitou","bu!"),2,replace = T)->shoujiqi[i,]
} #从石头剪子布里随机抽俩个,抽完在放回
unique(shoujiqi)->shengfubiao #仅有的数据集(胜负表)
fix(shengfubiao) #显示表格,手工修改和复制。
#read.delim("clipboard")->shengfubiao
jiqiren<-sample(c("jian","shitou","bu!") #机器人出剪刀石头布
,3,prob=c(1,2,3),replace = T) #随机选三个任选1,2,3,然后放回
jiqiren
result<-c()
you<-sample(c("shitou","bu!","jian"),3,prob=c(1,2,3),replace = T)# 我随机出剪刀石头布
,随机选三个任选1,2,3,然后放回
for(i in 1:3){ #for循环1——3
#readline("chu_quan_ba!")->you[i] #编辑出拳吧的命令
shengfubiao[which(shengfubiao[,1]==you[i] & shengfubiao[,2]==jiqiren[i]),3]->result[i]
cat(ifelse(result[i]==1,"you win!",ifelse(result[i]==-1,"you lost","banlence")))
print(paste("you take the " ,you[i],"and the robot take the",jiqiren[i]))
} #输入胜负表,我控制胜负表或者机器人控制胜负表,结果是我赢,避免我输
while(i<=20){ #i执行20次
cat(i,"") #执行中
i=i+1
}
result<-data.frame(you,jiqiren) #结果包含我和机器人的论据
data.frame(you,jiqiren,result) #设计一个包含我和机器人在内的框架
print(paste("you get the number :",sum(result))) #打印粘贴你得到的数,总结结果
我的感想:
通过这次的R猜拳解释让我学到了很多,这过程中,我认为最宝贵的就是学到了坚持不懈的精神,每当我想中途放弃的时候,老师总会用自己的方法让我坚持下来,所以这次作业的完成离不开老师的指引。虽然这次的作业完成了,达到了老师的低标准,但我自己知道,我离完美还差的很远,自己掌握的知识还是太少,以后一定努力积累知识,以备下次作业做的更完美,达到老师的高标准,争取不辜负老师的期望。