java编写三角形面积
楼主sanjiaoxing这个类里面的Trianglele类没有被执行到,可以把Trianglele类里面的内容写在sanjiaoxing这个类的构造方法里,这样就在NEW这个sanjiaoxing类时初始化三个点,不过这样就定死了..如果想要手动传参的话,可以另外定一个方法来实现初始化,然后在main方法里面调用一下.把调试好的代码给你贴下,希望可以帮到你...
package cd.itcast.test;
import java.lang.Math;
class Point {
public int x, y;
public Point(int a, int b) {
x = a;
y = b;
}
}
public class sanjiaoxing {
/**
* @param args
*/
double sa, sb, sc;
public sanjiaoxing() {
Point A = new Point(0, 0);
Point B = new Point(3, 0);
Point C = new Point(0, 4);
sa = Math.hypot((A.x - B.x), (A.y - B.y));
sb = Math.hypot((B.x - C.x), (B.y - C.y));
sc = Math.hypot((C.x - A.x), (C.y - A.y));
System.out.println(sa+sb+sc);
}
double zhouchang() {
return sa + sb + sc;
}
double getArea() {
double b, c;
b = (sa * sa + sb * sb - sc * sc) / (2 * sa * sc);
c = sa * sc * (Math.sqrt(1 - b * b)) / 2;
return c;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
sanjiaoxing your = new sanjiaoxing();
System.out.println("zhouchang " + your.zhouchang());
System.out.println("mianji " + your.getArea());
}
}
㈡ Java 编程求三角形面积
packagedemo;
importjava.util.Scanner;
publicclassTriangle
{
/**
*等腰
*/
publicstaticfinalintISOSCELES=1;
/**
*等边
*/
=2;
/**
*直角
*/
=4;
/**
*普通
*/
publicstaticfinalintGENERAL=6;
/**
*不构成三角形
*/
publicstaticfinalintNOTHING=7;
doublea;
doubleb;
doublec;
publicTriangle(doublea,doubleb,doublec)
{
this.a=a;
this.b=b;
this.c=c;
}
publicstaticintisWhichOne(Triangletriangle)
{
doublea=triangle.a;
doubleb=triangle.b;
doublec=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)
{
returnTriangle.EQUILATERAL|Triangle.ISOSCELES;
}
elseif(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)
{
returnTriangle.RIGHTANGLE|Triangle.ISOSCELES;
}
returnTriangle.RIGHTANGLE;
}
elseif(a==b||a==c||b==c)
{
returnTriangle.ISOSCELES;
}
else
{
returnTriangle.GENERAL;
}
}
else
{
returnTriangle.NOTHING;
}
}
publicstaticdoubleperimeter(Triangletriangle)
{
returntriangle.a+triangle.b+triangle.c;
}
publicstaticdoublearea(Triangletriangle)
{
doublea=triangle.a;
doubleb=triangle.b;
doublec=triangle.c;
return1.d/4*Math.sqrt((a+b+c)*(a+b-c)*(a+c-b)*(b+c-a));
}
publicstaticvoidtranslate(Triangletriangle)
{
inttype=isWhichOne(triangle);
switch(type)
{
caseTriangle.ISOSCELES:
System.out.println("等腰三角形");
break;
case(Triangle.EQUILATERAL|Triangle.ISOSCELES):
System.out.println("等边三角形+等腰三角形");
break;
caseTriangle.GENERAL:
System.out.println("普通三角形");
break;
case(Triangle.RIGHTANGLE|Triangle.ISOSCELES):
System.out.println("直角三角形+等腰三角形");
break;
caseTriangle.RIGHTANGLE:
System.out.println("直角三角形");
break;
default:
System.out.println("不构成三角形");
break;
}
if(type!=Triangle.NOTHING)
{
System.out.println("周长是:"+perimeter(triangle));
System.out.println("面积是:"+area(triangle));
}
}
publicstaticvoidmain(String[]args)
{
System.out.println("输入构成三角形的三边长:(空格隔开) 退出按(n/N),否则继续:");
Stringerror="输入有误,请重新输入:";
Stringreg="^\d+\s+\d+\s+\d+$";
Scannerscanner=newScanner(System.in);
while(scanner.hasNextLine())
{
Stringline=scanner.nextLine().trim();
if("n".equalsIgnoreCase(line))
{
break;
}
if(!line.matches(reg))
{
System.err.println(error);
}
else
{
try
{
String[]input=line.split("\s+");
inta=Integer.parseInt(input[0]);
intb=Integer.parseInt(input[1]);
intc=Integer.parseInt(input[2]);
Triangletriangle=newTriangle(a,b,c);
translate(triangle);
}
catch(NumberFormatExceptione)
{
System.err.println(error);
}
System.out.println("退出按(n/N),否则继续:");
}
}
scanner.close();
}
}
㈢ 用 java求三角形面积
代码如下,主要知识点三角形面积公式:p=(a+b+c)/2,s^2=p*(p-a)*(p-b)*(p-c)
JDK中的开方方法:Math.sqrt()
public class Demo {
public static void main(String[] args) {
double a=3;
double b=4;
double c=5;
double p=(a+b+c)/2;
System.out.println(Math.sqrt(p*(p-a)*(p-b)*(p-c)));
}
}
㈣ java求三角形面积
importjava.math.BigDecimal;
publicclassTriangle{
inta,b,c;//三条边
doubleS;//面积
booleanisTri=true;
Triangle(){
a=3;b=4;c=5;
}
Triangle(intbian){
a=b=c=bian;
}
Triangle(intbian1,intbian2,intbian3){
if(bian1+bian2>bian3&&bian1+bian3>bian2&&bian2+bian3>bian1){
a=bian1;b=bian2;c=bian3;
}else{
isTri=false;
System.out.print("不是三角形");
}
}
privatedoublegetS(){
if(isTri){
ints=(a+b+c)/2;
doubless=Math.sqrt(s*(s-a)*(s-b)*(s-c));
BigDecimalb=newBigDecimal(ss);
returnb.setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
}
return0;
}
publicstaticvoidmain(String[]aa){
System.out.println(newTriangle().getS());
System.out.println(newTriangle(5).getS());
System.out.println(newTriangle(5,8,6).getS());
System.out.println(newTriangle(2,9,6).getS());
}
}
㈤ 用java编写程序求三角形的面积
编写程序如下:
import java.util.Arrays;
import java.util.Scanner;
public class ssss {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("输入三条边的值:");
double a = sc.nextDouble();
double b = sc.nextDouble();
double c = sc.nextDouble();
if(a+b>c && a+c>b && b+c>a){
double p = (a+b+c)/2;
double area = Math.sqrt(p*(p-a)*(p-b)*(p-c));
System.out.println("此三角形面积为:"+area);
}else{
System.out.println("此三边不能构成三角形");
}
}
}
(5)java编写三角形面积扩展阅读
Java初学者:初学者的注意事项
1,java是大小心敏感的,就是说,大写字母和小写字母,在java里不可能被看成同样的东西。比如,System.out.println(“I am student”); 这运行起来完全没问题,但是如果你写成了system.out.println("I am student");
就绝对运行不了,同样的,你写了个int n; 还写了一个int N; 那这两个变量,就是不同的变量。java的关键字,一般来说,你是不能更改的,而你自己定义的变量名,大写小写,也会被java视为不同的东西。
2,写的程序要格式清晰规范,可读性好,首行要缩进,成对的花括号,除了类的括号以外,最后都要处于同一列。这并不是强制的,每个人的习惯也不同,但是至少要 清晰规范。
其实只从是否能运行来说,这是没关系的,java并不在乎你的程序代码看着乱不乱,只要对,就能编译运行,这与python强制程序员规范其代码格式不 同。
3,定义的数据名起码要正确,符合命名规则,其次要有意义。列举几个例子,常见的数据声明初始化:String name = "jianbo shi"; int age = 30; double mark = 70.5; 以上是正确的。
下面看几个错误的: String my name = "john mark"; 错误原因在于,my name 之间有个空格,如果你非要弄的好像中间有个空格,你可以这样String my_name = "john mark"; 有很多人,就喜欢这么用。
int 年龄 = 30; 错误原因在于,年龄两个字,不是英文,也许在中国人的电脑里,java不会报错甚至可以编译通过,但是运行的话就不行了,总之,除了要显示的信息外,代码部分不要用中文。double 200mark =70.5; 错误的原因在于,200mark的首字符是数字。
㈥ JAVA编程计算三角形面积
class Triangle {
private float botton;
private float height;
public void setTriangle(float botton,float height) {
this.botton = botton;
this.height = height;
}
public void area() {
float area = botton*height/2;
System.out.println("面积是 "+area);
}
}
public class TriangleExample {
public static void main(String args[]) {
Triangle t = new Triangle();
t.setTriangle(4,5);
t.area();
}
}
㈦ java编程中求三角形面积怎么写
java编程求三角形面积,首先判断用户输入的三条边是否符合规则,然后再使用函数sqrt来求面积,如下:
if(a+b>c){
if(b+c>a){
if(c+a>b){
System.out.println("能够构成三角形");
doublearea=Math.sqrt(p*(p-a)*(p-b)*(p-c));
System.out.println("面积为:"+area);
}else{
System.out.println("不能够构成三角形");
}
}else{
System.out.println("不能够构成三角形");
}
}else{
System.out.println("不能够构成三角形");
}
㈧ java计算三角形面积
classTrival
{
privatedoubleside;//三角形的边
privatedoubleh;//三角形的高
Trival(){}//无参构造方法
Trival(doubleside,doubleh){//有参构造方法
this.side=side;
this.h=h;
}
publicdoublefindArea(){//获取面积公式
returnside*h*0.5;
}
publicvoidsetSide(doubleside)
{
this.side=side;
}
publicdoublegetSide()
{
returnside;
}
publicvoidsetH(doubleh)
{
this.h=h;
}
publicdoublegetH()
{
returnh;
}
}
㈨ 用Java程序编写一个三角形的类,三条边为三个属性求三角形的面积和周长,并设计构造方法
importjava.util.Scanner;
publicclassTestDeadLock{
publicstaticvoidmain(String[]args){
doublea,b,c;//三角形三条边
Scannersc=newScanner(System.in);
System.out.println("请输入三角形的三条边长(回车键输入下一位):");
a=sc.nextDouble();
b=sc.nextDouble();
c=sc.nextDouble();
Triangleangle=newTriangle(a,b,c);
if(angle.isTriangle()){
System.out.println("三角形的周长是:"+angle.pereTriangle());
System.out.println("三角形的面积是:"+angle.areaTriangle());
}else
System.out.println("这三个边长不能组成三角形:"+a+""+b+""+c);
}
}
classTriangle{
privatedoublea,b,c;
publicTriangle(doublea,doubleb,doublec){
this.a=a;
this.b=b;
this.c=c;
}
publicbooleanisTriangle(){
if(a+b>c&&a+c>b&&b+c>a){returntrue;}
else
returnfalse;
}
publicdoublepereTriangle(){
returna+b+c;
}
publicdoubleareaTriangle(){
doublearea=0.0,temp=0.0;
temp=0.5*(a+b+c);
area=Math.sqrt(temp*(temp-a)*(temp-b)*(temp-c));
returnarea;
}
}