展开全部

package demo;

import java.util.Scanner;

public class Triangle

{

/**

* 等腰

*/

public static final int ISOSCELES = 1;

/**

* 等边

*/

public static final int EQUILATERAL = 2;

/**

* 直角32313133353236313431303231363533e78988e69d8331333335343938

*/

public static final int RIGHTANGLE = 4;

/**

* 普通

*/

public static final int GENERAL = 6;

/**

* 不构成三角形

*/

public static final int NOTHING = 7;

double a;

double b;

double c;

public Triangle ( double a, double b, double c )

{

this.a = a;

this.b = b;

this.c = c;

}

public static int isWhichOne ( Triangle triangle )

{

double a = triangle.a;

double b = triangle.b;

double c = triangle.c;

if (a + b > c && a + c > b && b + c > a && Math.abs (a - b)

{

if (a == b && a == c)

{

return Triangle.EQUILATERAL | Triangle.ISOSCELES;

}

else if (a * a + b * b == c * c || a * a + c * c == b * b || c * c + b * b == a * a)

{

if (a == b || a == c || b == c)

{

return Triangle.RIGHTANGLE | Triangle.ISOSCELES;

}

return Triangle.RIGHTANGLE;

}

else if (a == b || a == c || b == c)

{

return Triangle.ISOSCELES;

}

else

{

return Triangle.GENERAL;

}

}

else

{

return Triangle.NOTHING;

}

}

public static double perimeter ( Triangle triangle )

{

return triangle.a + triangle.b + triangle.c;

}

public static double area ( Triangle triangle )

{

double a = triangle.a;

double b = triangle.b;

double c = triangle.c;

return 1.d / 4 * Math.sqrt (( a + b + c ) * ( a + b - c ) * ( a + c - b ) * ( b + c - a ));

}

public static void translate ( Triangle triangle )

{

int type = isWhichOne (triangle);

switch (type)

{

case Triangle.ISOSCELES:

System.out.println ("等腰三角形");

break;

case ( Triangle.EQUILATERAL | Triangle.ISOSCELES ):

System.out.println ("等边三角形 + 等腰三角形");

break;

case Triangle.GENERAL:

System.out.println ("普通三角形");

break;

case ( Triangle.RIGHTANGLE | Triangle.ISOSCELES ):

System.out.println ("直角三角形 + 等腰三角形");

break;

case Triangle.RIGHTANGLE:

System.out.println ("直角三角形");

break;

default:

System.out.println ("不构成三角形");

break;

}

if (type != Triangle.NOTHING)

{

System.out.println ("周长是:" + perimeter (triangle));

System.out.println ("面积是:" + area (triangle));

}

}

public static void main ( String[] args )

{

System.out.println ("输入构成三角形的三边长:(空格隔开)\n退出按 (n/N), 否则继续: ");

String error = "输入有误,请重新输入: ";

String reg = "^\\d+\\s+\\d+\\s+\\d+$";

Scanner scanner = new Scanner (System.in);

while (scanner.hasNextLine ())

{

String line = scanner.nextLine ().trim ();

if ("n".equalsIgnoreCase (line))

{

break;

}

if (!line.matches (reg))

{

System.err.println (error);

}

else

{

try

{

String[] input = line.split ("\\s+");

int a = Integer.parseInt (input[0]);

int b = Integer.parseInt (input[1]);

int c = Integer.parseInt (input[2]);

Triangle triangle = new Triangle (a, b, c);

translate (triangle);

}

catch (NumberFormatException e)

{

System.err.println (error);

}

System.out.println ("退出按 (n/N), 否则继续: ");

}

}

scanner.close ();

}

}

java输出长方形面积和周长_用JAVA编程求长方形和三角形的面积和周长相关推荐

  1. 用java输出学生信息表代码_使用java导出学生成绩表-excel成绩表

    本文简单研究使用java导出学生成绩表,使用到的导出Excel的技术为Apache poi,相关的技术可以查看我之前的文章.之前导出的Excel的格式为03版的xls,使用的jar为poi-3.10- ...

  2. java输入长和宽输出面积_JAVA根据用户输入的长和宽,编程求长方形的面积和周长....

    题目: JAVA根据用户输入的长和宽,编程求长方形的面积和周长. 根据用户输入的长和宽,编程求长方形的面积和周长. 分析: 1) 新建控制台项目,名为Ex2_1,修改类的名字为Rectangle. 2 ...

  3. 求长方形的周长和面积c语言两个函数_「长方形的周长」C语言初级-输入长方形的两边长a和b,求长方形的周长和面积 - 金橙教程网...

    长方形的周长 任务和代码/* *Copyright (c)2018,CSDN学院 *All rights reserved. *文件名称:main.c *作 者:解玉柱 *完成时间:2018年10月3 ...

  4. python编程求长方形的面积_小练习 计算长方形的面积和周长

    #定义函数计算长方形的面积和周长 def cfx_s_c(): #输入长方形的长并赋值给变量a a = float(input("请输入长方形的长:")) #输入长方形的宽并赋值给 ...

  5. java当中有关循环的代码_有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下。1、循环输出1到100之间所有能被3或能被4整除的数。pack...

    有关Java循环的内容,编程中还是比较常用的,下面分享给大家几个循环的示例代码,练习一下. 1.循环输出1到100之间所有能被3或能被4整除的数. package com.hz.loop02; /** ...

  6. java怎么输出保留两位小数_剖析Java输出怎么保留两位小数

    Java中,当两个整数相除时,由于小数点以后的数字会被截断,运算结果将为整数,此时若希望得到运算结果为浮点数,必须将两整数其一或是两者都强制转换为浮点数,也就是Java输出怎么保留两位小数?接下来郑州 ...

  7. java如何从屏幕输入数字_关于java的从键盘输入,从显示屏上输出?怎么做?为什么?...

    看了一本java的入门书,但是其中居然没有讲到java的泛型编程,其实现在我学习java陷入的困境,很迷惑.java中有无数的类,尤其是关于流的那块,类数之不尽,但是关于从键盘输入和从显... 看了一 ...

  8. java制作一个简单的画板_【Java】Thymeleaf一个简单示例

    Thymeleaf简单介绍 Thymeleaf是用来开发Web和独立环境项目的服务器端的Java模版引擎 Spring官方支持的服务的渲染模板中,并不包含jsp.而是Thymeleaf和Freemar ...

  9. java 必须try catch的异常_【java基础之异常】死了都要try,不淋漓尽致地catch我不痛快!...

    @ 1.异常 1.1 异常概念 异常 :简单说就是不正常运行,最终导致JVM的非正常停止. 在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象.Java处 ...

最新文章

  1. WordPress标签
  2. php+mysql 大容量数据高效分页效果(弃用limit)
  3. Docker学习之网络篇
  4. 长途每分钟只要9分钱!
  5. 【C 语言】文件操作 ( 文件加密解密 | 加密解密原理 | 对称加密 | 非对称加密 | 散列函数 )
  6. 为什么一个程序申请的内存有限制_为什么要做自己的小程序商城,做一个要多久?...
  7. 计算机组成原理实验报告西华大学,计算机组成原理实验报告算术逻辑运算单元实验...
  8. vue 监听map数组变化_vuex state中的数组变化监听实例
  9. 关卡 动画 蓝图 运行_UE4无缝过场动画
  10. 苹果的倔强!今秋新iPhone外观设计将与2018年款非常相似
  11. Apache Sentry 第一弹:Server启动、连接Hue、分组详解
  12. [我的常识]动物庄园里说鼻环,到底为啥要穿鼻环呢
  13. TensorFlow by Google 实战CNN Machine Learning Foundations: Ep #4 - Coding with CNN
  14. 贴片铝电容识别及型号_贴片铝电解电容封装尺寸定义.pdf
  15. 形式语言与自动机第一课
  16. Java遍历文件夹及图像缩放批处理
  17. c语言汉字转拼音,c语言汉字转拼音函数源码 汉字拼音转换
  18. c++ primer plus 第十四章 C++中的代码重用
  19. 2020第十一届11月蓝桥杯大赛软件类B组C/C++省赛题解
  20. OAuth2.0的refresh token

热门文章

  1. 学python考什么证书比较实用_有哪些实用性很强的证书值得考?
  2. Facebook海外企业广告账户的优势在哪?
  3. 计算机管理员服务承诺,机房管理员工作承诺书范文
  4. B站黑马测试第二篇P204:navicat连接本地tpshop2.0数据库
  5. Vegas如何使用透明图像作遮罩?
  6. idea 设置背景图片、护眼主题
  7. mysql堆表和索引组织_从堆表(Heap Table)到索引组织表
  8. 5000学软件测试买什么电脑好,大学学的软件工程,买什么电脑合适,预算不超过7000?...
  9. 【初识C语言】putchar函数
  10. 关于memory.dmp文件