开发者社区 问答 正文

如何实现三边和小于定值的所有能可以组成三角形的三边

比如说:
求所有三边和小于10的,能组成三角形的三边,以数组的形式输出。
三边全部为正整数!
求各位大神帮忙看看这个算法应该怎么写。

展开
收起
蛮大人123 2016-06-03 14:33:24 2068 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪
    public class AddTest {
    public static void main(String[] args) {
    int a,b,c;
    double d;
    for (int i = 0; i < 999; i++) {
    a = i/100;
    b = (i-100*a)/10;
    c = i%10;
    
            if (a+b+c < 10 && a+b>c && a-b <c && a !=0 && b!= 0 && c!=0 && a>=b) {
                d = (double)(a+b+c)/2;
                System.out.print(a + "\t" + b +"\t" + c);
                System.out.println("面积" + Math.sqrt(d*(d-a)*(d-b)*(d-c)));
            }
    
        }
    }
    }

    结果:

    1 1 1 面积: 0.4330127018922193
    2 1 2 面积: 0.9682458365518543
    2 2 1 面积: 0.9682458365518543
    2 2 2 面积: 1.7320508075688772
    2 2 3 面积: 1.984313483298443
    3 1 3 面积: 1.479019945774904
    3 2 2 面积: 1.984313483298443
    3 2 3 面积: 2.8284271247461903
    3 2 4 面积: 2.9047375096555625
    3 3 1 面积: 1.479019945774904
    3 3 2 面积: 2.8284271247461903
    3 3 3 面积: 3.897114317029974
    4 1 4 面积: 1.984313483298443
    4 2 3 面积: 2.9047375096555625
    4 3 2 面积: 2.9047375096555625
    4 4 1 面积: 1.984313483298443
    2019-07-17 19:26:36
    赞同 展开评论
问答分类:
问答地址: