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

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

问题解决的话,请点采纳

#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 . . .

唐僧胜: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