回 帖 发 新 帖 刷新版面

主题:高手请进

现在麻烦你写一个程序,判断两个正整数的最大公约数是不是偶数,是偶数的话输出“Yes”,否则输出“No”。
Input
输入包含多组数据,每组数据包含两个正整数a和b (1 <= a, b <= 10^6),表示两个人的幸运数字。
Output
对于每组数据,如果a和b的最大公约数是偶数,则输出“Yes”(不包含双引号),否则输出“No”(不包含双引号)。
Sample Input
30 15
24 22
Sample Output
No
Yes
#include<stdio.h>
int main()
{
    int a,b,m,n;
    while(scanf("%d%d",&a,&b)!=EOF)
    {
        if(a>b)
        {
           m=b;b=a;a=m;
        }
        while((n=b%a)!=0)
        {
            b=a;a=n;
        }
        if(a%2!=0)
            printf("NO\n");
        else printf("Yes\n");
    }
    return 0;
}

怎么错了?

回复列表 (共2个回复)

沙发

“怎么错了? ”
--- 你说呢?若是编译错误,告诉别人是第几行,且给出编译器的出错信息;若是运行错误,告诉别人你输入什么,实际输出什么,期待输出什么。

题外话,“判断两个正整数的最大公约数是不是偶数”似乎等同于“判断两个正整数是不是都是偶数”

板凳


我在VC++6.0上面运行时是对的 但上交的时候显示的是WRONG ANSWER

我来回复

您尚未登录,请登录后再回复。点此登录或注册