| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 700 人关注过本帖
标题:看看这个程序怎么写
只看楼主 加入收藏
huaheshang
Rank: 2
来 自:日照
等 级:论坛游民
帖 子:91
专家分:37
注 册:2010-12-7
结帖率:79.31%
收藏
已结贴  问题点数:20 回复次数:10 
看看这个程序怎么写
编程求取:[121,140] 之间的弦数的个数(若某正整数的平方等于另两个正整数平方之和,则称该数为弦数. 例如:3^2+4^2=5^2, 因此5是弦数)。
搜索更多相关主题的帖子: 正整数 
2011-01-04 16:18
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
收藏
得分:5 
程序代码:
#include <stdio.h>
#include <math.h>
int main(void)
{
    int i,j,k;
    for (i=121;i<=140;i++)
    {
        for (j=1;j<i;j++)
        {
            for (k=1;k<i;k++)
            {
                if (pow(i,2)==pow(j,2)+pow(k,2))
                {
                    printf("%d^2=%d^2+%d^2",i,j,k);
                    return 0;
                }
            }
        }
    }
    return -1;//未找到
}
效率不算高  将就着吧

                                         
===========深入<----------------->浅出============
2011-01-04 17:28
xufan123
Rank: 5Rank: 5
等 级:职业侠客
帖 子:226
专家分:318
注 册:2010-11-15
收藏
得分:5 
#include<stdio.h>
#include<math.h>
void main()
{
    long m,x,y,n=0;
    for(m=121;m<=140;m++)
        for(x=1;x<m;x++)
            for(y=1;y<=x;y++)
                if(pow(x,2)+pow(y,2)==pow(m,2))
                {
                    printf("m=%-6ld x=%-6ld y=%-6ld",m,x,y);
                    n++;
                    if(n%3==0)
                        printf("\n");
                }
                printf("total is %ld\n",n);
} 这个试试 把它改成int 效率高点
2011-01-04 17:38
huaheshang
Rank: 2
来 自:日照
等 级:论坛游民
帖 子:91
专家分:37
注 册:2010-12-7
收藏
得分:0 
如何求弦数的个数?
2011-01-04 17:39
xufan123
Rank: 5Rank: 5
等 级:职业侠客
帖 子:226
专家分:318
注 册:2010-11-15
收藏
得分:0 
上面的N就是个数
2011-01-04 17:40
huaheshang
Rank: 2
来 自:日照
等 级:论坛游民
帖 子:91
专家分:37
注 册:2010-12-7
收藏
得分:0 
不是,求弦数的个数(若某正整数的平方等于另两个正整数平方之和,则称该数为弦数. 例如:3^2+4^2=5^2, 因此5是弦数),只问符合要求的弦数有多少,
2011-01-04 17:56
zzgzzg00
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:388
专家分:627
注 册:2010-8-2
收藏
得分:5 
main()
{
int i,j,c;
clrscr();
clrscr();
for(i=0;i<=8;i++)
{
 for(j=11;j>=8;j--)
 {
  c=i*i+j*j;
  if(c>=121&&c<=140)
  printf("%d^2+%d^2=%d\n",i,j,c);
 }
}
}
似乎就9个 如果0*0+11*11==11*11+0*0的话
图片附件: 游客没有浏览图片的权限,请 登录注册


粗心是大敌
2011-01-04 18:11
zzgzzg00
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:388
专家分:627
注 册:2010-8-2
收藏
得分:0 
  理解错误

粗心是大敌
2011-01-04 18:13
huaheshang
Rank: 2
来 自:日照
等 级:论坛游民
帖 子:91
专家分:37
注 册:2010-12-7
收藏
得分:0 
快帮帮忙啊!
2011-01-04 20:43
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:5 

介绍一下方法,楼主你自己编,
假如是弦数,两个数肯定比弦数小  而且还想想三角规则是两边之和大于第三边,
那么两个数之和肯定大于弦数,就按这个思路编

小代码,大智慧
2011-01-04 21:02
快速回复:看看这个程序怎么写
数据加载中...
 
   



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

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