栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

查找a + b + c = 1000的毕达哥拉斯三联体

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

查找a + b + c = 1000的毕达哥拉斯三联体

#include <math.h>#include <stdio.h>int main(){    const int sum = 1000;    int a;    for (a = 1; a <= sum/3; a++)    {        int b;        for (b = a + 1; b <= sum/2; b++)        { int c = sum - a - b; if ( a*a + b*b == c*c )    printf("a=%d, b=%d, c=%dn",a,b,c);        }    }    return 0;}

说明:

  • b = a;
    如果a,b(a <= b)和c是毕达哥拉斯三重态,
    则b,a(b> = a)和c-也是解,因此我们只能搜索一种情况

  • c = 1000-a-b; 这是问题的条件之一(我们不需要扫描所有可能的“ c”:只需对其进行计算)



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/660546.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号