标题:一个求勾股数的问题
只看楼主
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
得分:0 
回复 10楼 nosnoy
同意你的观点。在C++的时候,A也A++。B也B++,同时它们是一环套一环的,不会遗漏解的。
2018-05-13 19:57
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
这样

假设~

c是勾股数,对应的是a1,b1
c+1也是勾股数,对应的是a2,b2
这样有没没有a1>a2的可能呢~
此时
a1>b1
a2>b2
也是满足的~

就是不知道有没有这种可能~

[此贴子已经被作者于2018-5-13 20:27编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-05-13 20:16
一鑫
Rank: 2
等 级:论坛游民
帖 子:111
专家分:12
注 册:2018-4-12
得分:0 
回复 5楼 自学的数学
有个小问题 ,第一个循环用了c++,然后后面又有一个c++;会不会这样,第一次c=x,然后x是勾股数,接下了c被加了1,然后第一个循环那又加了1  最后成了c=x+1+1这样, 我这句话可能有点难理解 哈哈
2018-05-13 20:32
一鑫
Rank: 2
等 级:论坛游民
帖 子:111
专家分:12
注 册:2018-4-12
得分:0 
回复 5楼 自学的数学
有个小问题 ,第一个循环用了c++,然后后面又有一个c++;会不会这样,第一次c=x,然后x是勾股数,接下了c被加了1,然后第一个循环那又加了1  最后成了c=x+1+1这样, 我这句话可能有点难理解 哈哈
2018-05-13 20:32
nosnoy
Rank: 9Rank: 9Rank: 9
来 自:mcu
等 级:贵宾
威 望:14
帖 子:540
专家分:1158
注 册:2016-9-17
得分:0 
回复 14楼 一鑫
如果难理解 你就改成 a=c;b=c;
因为我们现在都还不知道c++可行不可行(讨论中)

穷举是最暴力的美学
2018-05-13 20:44
自学的数学
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:46
帖 子:967
专家分:4146
注 册:2017-11-15
得分:0 
回复 14楼 一鑫
这有啥难理解的呢?后面加的这个C++,不会影响这题的正确性,请看:
程序代码:
#include<stdio.h>
int main()
{
    int count=0,a,b,c,d;
    scanf("%d",&c);
    for(c>0;c;c++)
    {
        for(a=1;a<c;a++)
        {
            for(b=1;b<a;b++)
            {
                if(c*c==a*a+b*b)
                {
                    count++;
                    printf("NO%d=%d ",count,c);
                    printf("NO%d=%d ",count,a);
                    printf("NO%d=%d\n",count,b);
                    c++    ;
                    if(count==4)
                       return 0;
                  printf("c = %d ",c); 
                }
                
            }
        }
        
     } 

 }

现在你输几个最好是能连续的数进去试试:就比如50之类的,看看。
2018-05-14 09:28
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:0 
回复 16楼 自学的数学
以下是引用自学的数学在2018-5-14 09:28:12的发言:

这有啥难理解的呢?后面加的这个C++,不会影响这题的正确性,请看:



就是难以理解嘛~

程序代码:
#include<stdio.h>

void fun1( int );
void fun2( int );

int main( void )
{
    const int k=1096;
    
    fun1(k);
    puts("");
    
    fun2(k);
    
    return 0;
}

 

 void fun1( int c )

 {
    int count=0,a,b;

    for(c>0;c;c++)
    {
        for(a=1;a<c;a++)
        {
            for(b=1;b<a;b++)
            {
                if(c*c==a*a+b*b)
                {
                    count++;
                    printf("c->NO%d=%-6d ",count,c);
                    printf("a->NO%d=%-6d ",count,a);
                    printf("b->NO%d=%-6d\n",count,b);
                    c++;
                    if(count==5)
                       return ;
                }             
            }
        }
     } 

 }

 

 void fun2( int c )

 {
     int count=0,a,b;
     
     for(c>0;c;c++)
    {
        for(a=1;a<c;a++)
        {
            for(b=1;b<a;b++)
            {
                if(c*c==a*a+b*b)
                {
                    count++;
                    printf("c->NO%d=%-6d ",count,c);
                    printf("a->NO%d=%-6d ",count,a);
                    printf("b->NO%d=%-6d\n",count,b);
                    //c++;
                    if(count==5)
                       return ;
                    
                    a=c;
                    b=a;
                }                
            }
        }
     } 

 }


吃瓜去~

[此贴子已经被作者于2018-5-14 13:07编辑过]


[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2018-05-14 09:45
nosnoy
Rank: 9Rank: 9Rank: 9
来 自:mcu
等 级:贵宾
威 望:14
帖 子:540
专家分:1158
注 册:2016-9-17
得分:0 
回复 17楼 九转星河
突如其来的骚,被你闪了腰

穷举是最暴力的美学
2018-05-14 14:15



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-486880-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019449 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved