问题标题: 酷町堂:求大佬帮忙!30个!代码写完整点行吗?

0
0

1
已采纳
方亦欧
方亦欧
新手光能
新手光能

这一题的难点就在于怎么模拟出马的顺序。取余运算就可以实现这一点。

我们可以用一个循环,表示轮数(i从0-n-1),然后用i取余nt得到当前轮田忌的出马等级,取余nq得到当前轮齐威王的出马等级,然后把它们作为数组的下标,存到一个变量里,然后判断就可以了。看懂了吗?

核心代码如下:

for(i=0;i<n;i++)
{
    t[i]=t[i%nt];
    q[i]=q[i%nq];
    if(t[i]>q[i])
       y++;
    else if(t[i]<q[i])
       x++;
}

最后判断x和y的大小,x大就输出"T",y大就输出"Q",否则输出"P"。

望采纳!

0
刘睿轩
刘睿轩
中级光能
中级光能

忘说题号了,sorry:

是1060 田忌赛马

0
马佳滢
马佳滢
新手天翼
新手天翼

//这是上次课老师(至于那位teacher,自己想)教的。
//①:输入田忌出马对战的规律。(꒪Д꒪)ノ(规律规律规律!听懂了没有?)
//②:输入齐威王出马对战的规律。ミ゚Д゚彡(这也一样,不要我讲)
//③:按次数存下田忌出马对战的全部过程。(▼ヘ▼#)(我是田忌!)
//④:按次数存下齐宣王出马对战的全部过程。ヽ(・ω・´メ)(齐宣王来也~~)
//剩下你应该都明白。(*^▽^*)(不明白,等着我)
    定义(整形) n,nt,nq;
    定义数组(整形) a[102],b[102];
    输入n、nt、nq;
    循环(定义(整形)i从0加到nt-1)//①
        输入a[i];
    循环(定义(整形)i从0加到np-1)//②
        输入b[i];
    循环(定义(整形)i从nt加到n)//③
        a[i]=a[i%nt];
    循环(定义(整形)i从np加到n)//④
        b[i]=b[i%nq];
    定义 q(赋初始值:0),t(赋初始值:0);
    循环(定义(整形)i从0加到n-1){
        判断(a[i]是不是小于b[i])
            t++;
        否则 判断(a[i]是不是大于b[i])
            q++;
    }   判断(t是不是大于q)输出"T";
    否则 判断(t是不是小于q)输出"Q";
    否则 输出"P";
    返回值 0;

 

0
我要回答