编写一个主函数,已知6≤a≤40,15≤b≤30,求出满足不定方程2a+5b=120的全部整数组解。如(13,20)就是其中的一组解。 

解决方案 »

  1.   

    #include<stdio.h>int main()
    {
        int a,b,c;
        for(b=15;b<=30;b++)
        {
            //2a+5b=120
            c=120-5*b;
            if(c%2==0)
            {
                a=c/2;
                if(a<=40&&a>=6)
                {
                    printf("(%d,%d)\n",a,b);
                }
            }
        }
    }
      

  2.   

    2楼代码可行
    纯C环境下,最后一个}之前加getch();
      

  3.   

    就两个form循环就行了for(int i=6;i<=40;i++)
    {
       for(int b=15;b<=30;b++)
       {
         if(2*i+5*b==120)
          {
               //输出或者增加到一个列表都行
          }    }
    }
      

  4.   

            if(c%2==0)
            {
                a=c/2;
    (这里是保证值符合的关键)
    我最初思路和2楼差不多,但是写的却不输出
    直接这么走了   c=(120-5*b)/2;
      

  5.   

    #include<stdio.h>int main()
    {
        int a,b,c;
        for(b=15;b<=30;b++)
        {
            //2a+5b=120
            c=120-5*b;
            if(c%2==0)
            {
                a=c/2;
                if(a<=40&&a>=6)
                {
                    printf("(%d,%d)\n",a,b);
                }
            }
        }
    }
    //学习了......
      

  6.   

    两个for有损效率。2楼的思路比俩个for好吧!
      

  7.   

    最麻烦的是用For语句枚举!!!
      

  8.   

    程序运行结果:
    (10, 20)
    (15, 18)
    (20, 16)
    程序:#include<stdio.h>
    void main()
    {
    int a,b;
    for(a=6;a<=40; a++)
    for(b=15;b<=30;b++)
    if(2*a+5*b==120) printf("(%d, %d)\n",a,b);  
    }
      

  9.   

    另外,题目显然是不对的,修改为:
    编写一个主函数,已知6≤a≤40,15≤b≤30,求出满足不定方程2a+5b=120的全部整数组解。如(10,20)就是其中的一组解。 
      

  10.   

    呵呵 2楼 很强 学习了 
    for(b=15;b<=30;b++)
    这句 b<=24就够了 
      

  11.   


    for(int a = 6; a <= 40; a++)
    {
     for(int b = 15; b <= 30; b++)
     {
      if(2 * a + 5 * b == 120)
       {
         cout <<"a:"<<a<<",b:"<<b<<endl;
       }
     }

      

  12.   

    就两个form循环就行了 
    for(int i=6;i <=40;i++) 

      for(int b=15;b <=30;b++) 
      { 
        if(2*i+5*b==120) 
          { 
              //输出或者增加到一个列表都行 
          }     } 
      

  13.   

    .NET联盟会馆 QQ群号:77329563  招聘中.....
      

  14.   


    int main() 

        int a,b,c; 
        for(b=15;b <=30;b++) 
        { 
            //2a+5b=120 
            c=120-5*b; 
            if(c%2==0) 
            { 
                a=c/2; 
                if(a <=40&&a>=6) 
                { 
                    printf("(%d,%d)\n",a,b); 
                } 
            } 
        }