WDNMde_
WDNMde_
2020-04-03 16:34
采纳率: 66.7%
浏览 247

初学C++作业题,编写一个模拟唐僧师徒与妖精进行对决的游戏。大神就当做练习题吧跪求了!!

编写一个模拟唐僧师徒与妖精进行对决的游戏 每次战斗中妖精的战斗值从 0 到 29随机产生; 唐僧师徒随机选出代表参战 (唐僧 =0,沙僧 =10,八戒 =20,悟空 =30); 计算双方各自的胜率。大神就当做练习题吧跪求了

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • caozhy
    已采纳

    问题解决的话,请点采纳

    #include <iostream>
    #include <cstdlib>
    #include <ctime>
    using namespace std;
    
    int play()
    {
        int arr[] = {0,10,20,30};
        int ghost = rand() % 30;
        int shitu = arr[rand() %4];
        return (ghost < shitu) * 2 + (ghost > shitu);
    }
    
    int main()
    {
        srand((int)time(0));
        int shitu = 0;
        int ghost = 0;
        int n = 100000;
        for (int i = 0; i < n; i++)
        {
            int r = play();
            if (r == 2) shitu++;
            if (r == 1) ghost++;
        }
        printf("shitu %f, ghost %f", shitu /(float)n, ghost /(float)n);
        return 0;
    }
    

    shitu 0.500230, ghost 0.474490Press any key to continue . . .

    点赞 评论
  • qq_39554698
    小学狗喵喵叫 2020-04-03 16:44

    唐僧胜:1/3*1/4+2/3*1/4+1*1/4 = 0.5
    平:1/30*1/4+1/30*1/4+1/30*1/4 = 0.025
    妖怪胜:29/30*1/4+19/30*1/4+9/30*1/4 = 0.475

    点赞 评论

相关推荐