class?Triangle?{
創(chuàng)新互聯(lián)專注于企業(yè)網(wǎng)絡(luò)營銷推廣、網(wǎng)站重做改版、赤峰林西網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、商城網(wǎng)站定制開發(fā)、集團公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為赤峰林西等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
int?a;
int?b;
int?c;
public?Triangle()?{
}
public?Triangle(int?a,?int?b,?int?c)?{?//?把無關(guān)的語句去掉
this.a?=?a;
this.b?=?b;
this.c?=?c;
}
public?void?isTriangle()?{?//?用這個方法判斷是不是三角形
if?((this.a?+?this.b??this.c)??(this.a?+?this.c??this.b)
?(this.b?+?this.c??this.a))?{
System.out.println("我是一個三角形");
}?else
System.out.println("我不是一個三角形");
}
}
public?class?Test?{
public?static?void?main(String[]?args)?{
Triangle?t?=?new?Triangle(2,?3,?1);
t.isTriangle();
}
}
只要能獲得三角形的三邊長度,就很容易了
假設(shè)三邊長度為a、b、c
先判斷是否為三角形:|a-b|ca+b(三個邊)
鈍角、銳角用余弦定理,判斷cosA(三個點)的正負(fù)性
直角用勾股定理
等腰或等邊更簡單
if ("true".equals(show.isTriangle(a, b, c))) {
改成
if (show.isTriangle(a, b, c)) {
if ((a + b c) (a + c b) (b + c a)) {
改成
if (((a + b) c) ((a + c) b) ((b + c) a)) {
你再試試
package?demo;
import?java.util.Scanner;
public?class?Triangle
{
/**
?*?等腰
?*/
public?static?final?int?ISOSCELES?=?1;
/**
?*?等邊
?*/
public?static?final?int?EQUILATERAL?=?2;
/**
?*?直角
?*/
public?static?final?int?RIGHTANGLE?=?4;
/**
?*?普通
?*/
public?static?final?int?GENERAL?=?6;
/**
?*?不構(gòu)成三角形
?*/
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)??c??Math.abs?(a?-?c)??b??Math.abs?(b?-?c)??a)
{
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?("不構(gòu)成三角形");
break;
}
if?(type?!=?Triangle.NOTHING)
{
System.out.println?("周長是:"?+?perimeter?(triangle));
System.out.println?("面積是:"?+?area?(triangle));
}
}
public?static?void?main?(?String[]?args?)
{
System.out.println?("輸入構(gòu)成三角形的三邊長:(空格隔開)\n退出按?(n/N),?否則繼續(xù):?");
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),?否則繼續(xù):?");
}
}
scanner.close?();
}
}
新聞名稱:java判定三角形代碼 java判斷三角形是不是直角三角形
本文網(wǎng)址:http://chinadenli.net/article16/doddhdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、手機網(wǎng)站建設(shè)、搜索引擎優(yōu)化、網(wǎng)站策劃、網(wǎng)站制作、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)