`
zhou_zhihao
  • 浏览: 57205 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

问题9-求毕达哥拉斯三元数组{a,b,c},使得a+b+c=1000,给出a*b*c

阅读更多

问题描述如下:
        “毕达哥拉斯三元数组存在{a,b,c},a<b<c,使得a^2+b^2=c^2,如3^2+4^2=5^2=25,求a,b,c满足以上条件,并使a+b+c=1000,给出a*b*c的值。”

    代码如下:

/**
	 * 求毕达哥拉斯三元数组{a,b,c},使得a+b+c=target . 毕达哥拉斯三元数组存在{a,b,c},a<b<c,使得a^2+b^2=c^2
	 * a > 3,(target-(a+b))^2=c^2=a^2+b^2 --> target^2=2*target*(a+b)-2ab
	 * 
	 * @return
	 */
	private static int getNumber(int target) {
		int a = 0;
		int b = 0;
		int c = 0;
		for (int i = 3; i < target; i++) {
			for (int j = i; j < target; j++) {
				if (target * target == 2 * target * i + 2 * target * j - 2 * i
						* j) {// target^2=2*target*(a+b)-2ab
					a = i;
					b = j;
					break;
				}
			}
		}
		c = target - a - b;
		return a * b * c;
	}
 


    具体的分析可以看代码注释。得出结果31875000。
    除了直接的办法,应该还有另外的方法来求,保持未完待续状态。
    请不吝赐教。
    @anthor ClumsyBirdZ

分享到:
评论

相关推荐

    算法-数论- 毕达哥拉斯三元组.rar

    毕达哥拉斯三元组就是满足上述等式的三个正整数(a, b, c)的有序组合。例如,(3, 4, 5)就是一个著名的毕达哥拉斯三元组,因为3² + 4² = 9 + 16 = 25,而5² = 25。这样的三元组在实际生活中有着广泛的应用,比如在...

    寻找毕达哥拉斯三元组的C语言

    寻找毕达哥拉斯三元组的C语言代码 纯C语言代码 C语言初学课程需要

    毕达哥拉斯三元组:Python中的毕达哥拉斯三元组

    它指的是在一个直角三角形中,满足勾股定理的三个整数边长组成的有序三元组(a, b, c),其中a和b是直角边,c是斜边,满足关系a² + b² = c²。毕达哥拉斯三元组在各种几何和代数问题中都有应用,例如在平面几何、...

    求毕达哥拉斯三角形的边

    该汇编程序旨在寻找毕达哥拉斯三角形的边长,即找到三个正整数A、B和C,满足A² + B² = C²的条件。程序首先提示用户输入一个值C,然后试图找到所有可能的A和B,使得它们的平方和等于C的平方。以下是程序的主要步骤...

    勾股定理全章知识点总结.zip

    - **逆勾股定理**:已知直角三角形的两边长,可以求出第三边,即\(c = \sqrt{a^2 + b^2}\)或\(a = \sqrt{c^2 - b^2}\),\(b = \sqrt{c^2 - a^2}\)。 - **勾股数组**:一组整数(a, b, c),满足\(a^2 + b^2 = c^2\)...

    毕达哥拉斯三元组

    毕达哥拉斯三元组

    新北师大版数学八年级(上册)复习知识点汇总.doc

    - **算数平方根**:正数a的算术平方根表示为√a,是使得√a²=a的那个正数,0的算术平方根是0。 - **平方根**:一个数a的平方根表示为±√a,一个正数有两个平方根,它们互为相反数,0的平方根仍是0。 6. **...

    检测是否为勾股数组(勾股定理)

    勾股数组是由三个正整数构成的有序数组 (a, b, c),满足 a² + b² = c²。例如,(3, 4, 5) 就是一个典型的勾股数组,因为 3² + 4² = 5²。 实现这样的检测算法,通常会采用以下步骤: 1. 首先,我们需要定义一个...

    常见的勾股数组公式.doc

    勾股数组,又称为毕达哥拉斯三元组,是指满足勾股定理的三个正整数a, b, c,它们之间满足关系a² + b² = c²。在数学中,寻找和理解勾股数组的公式具有重要的理论和实践意义,它们广泛应用于几何、代数以及密码学等...

    (备战中考15分钟精华题)考点34新概念及阅读理解型问题.pdf

    - 要使程序无法停止,需要找到一个x,使得cbxax2(x)&gt;0恒成立,比如c&gt;0, a, b,并且x=0。 8. **数学符号与阶乘** - nnkk表示从1到n的所有整数之和,即1+2+...+n。 - 阶乘n!表示1×2×...×n。 - 题目中涉及的...

    北师大版八年级数学上册第一章勾股定理 1.1.1探索勾股定理 同步 练习题( 教师版).docx

    即若直角三角形的两直角边分别为\(a\)和\(b\),斜边为\(c\),则有\(a^2 + b^2 = c^2\)。 - **历史背景**:虽然通常认为此定理以古希腊数学家毕达哥拉斯的名字命名,但事实上早在公元前1000多年,中国就有了勾股定理...

    直角三角形a2+b2=c2整数解的定a公式直求法

    直角三角形的三边a、b、c之间的关系是古希腊数学家毕达哥拉斯发现的,即勾股定理:a²+b²=c²。这是一个描述直角三角形边长关系的定理,其中c表示斜边长,a、b表示两直角边长。这个定理在数学史中占据极其重要的...

    简单数学杂讲

    - **正弦定理**:在一个三角形中,各边与对应角的正弦值成比例,即 \(\frac{a}{\sin A} = \frac{b}{\sin B} = \frac{c}{\sin C}\)。 - **余弦定理**:\(c^2 = a^2 + b^2 - 2ab\cos C\)。 - **常用公式**:包括...

    汇编求毕达哥拉斯三角形的边实验报告

    实验要求:一个毕达哥拉斯三角形的三条边是由三个正整数 A、B和C组成,从而A2+B2=C2。例如,数字 3、4、5,由于 9+16=25,而形成一个毕达哥拉斯三角形。写一段完整的汇编程序,实现输入一个值给 C,然后显示值为 C...

    成都理工大学离散数学课程资料复习资料

    - 毕达哥拉斯悖论:关于无理数的存在性问题,引发了数学上的第一次危机。 - 贝克莱悖论:涉及无穷小量的问题,导致了第二次数学危机。 - 罗素悖论:涉及到集合论中的悖论,引发了第三次数学危机。 - **命题的符号...

    欧拉计划.doc

    - **条件验证**:检查三元组是否满足a^2 + b^2 = c^2的条件。 以上就是基于“欧拉计划”文档中所描述的问题的关键知识点总结。这些问题涵盖了从基础的数学运算到复杂的算法设计,对于提升C/C++编程技能具有极高的...

Global site tag (gtag.js) - Google Analytics