package edu.jmi.shape;
import java.util.Scanner;
public class SanJiaoXing {
float length;
float high;
/**
* @param args
*/
float zhouChang(){
float zhou = 3*length;
return zhou;
}
float mianJi(){
float mian = (length*high)/2;
return mian;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
SanJiaoXing san = new SanJiaoXing();
san.length = 6;
san.high = 5;
System.out.println("请输入三角形的长和高:");
Scanner sc = new Scanner(System.in);
san.length = sc.nextFloat();
san.high = sc.nextFloat();//从键盘导入
float zc = san.zhouChang();//通过对象调用周长计算面积
System.out.println("周长"+zc);
float mj = san.mianJi();
System.out.println("面积"+mj);
}
}
三角形的长是什么东西?只有三边长,或者周长,或者底边长,三角形不是长方形,哪里来的长。
先定义三个边长,用if语句判断输入的两条边长是否大于第三条边长。如果大于,再进去 这里面:
System.out.println("请输入三角形的长和高:");
Scanner sc = new Scanner(System.in);
san.length = sc.nextFloat();
san.high = sc.nextFloat();//从键盘导入
我也是个学生,也是刚学没多久java,我也不知道这个思路对不对。多多指教啊。
不是应该从键盘输入三角形的三个边长吗?然后用两边之和大于第三边判断是否可以形成三角形,最后用海伦公式计算面积,周长就是三边和
这是我刚才回答别人问题的代码,希望可以解决你的问题,你可以直接复制,然后运行试试,具体不懂得可以问我
import java.util.Scanner;
public class Test
{
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.println("请输入三角形边长:");
double a=scan.nextDouble();
double b=scan.nextDouble();
double c=scan.nextDouble();
Triangle s=new Triangle();
if((a+b)>c&&(a+c)>b&&(b+c)>a){
s=new Triangle(a,b,c);
System.out.println("三角形的三边分别为:"+a+"\t"+b+"\t"+c);
}
else{
System.out.println("输入的三边不能形成三角形!");
System.exit(0);
}
System.out.println("周长为:"+s.round());
System.out.println("面积为:"+s.area());
}
}
class Triangle{
double a;
double b;
double c;
public Triangle(){
}
public Triangle(double x,double y,double z){
this.a=x;
this.b=y;
this.c=z;
}
public double round(){
return a+b+c;
}
public double area(){
double p=(this.a+this.b+this.c)/2.0;
double x=Math.sqrt(p*(p-this.a)*(p-this.b)*(p-this.c));
return x;
}
}