课堂在线Java程序设计作业 类的使用

创建一个简单的表示矩形的Rectangle类,满足以下条件:


1、定义两个成员变量height和width,表示矩形的长和宽,类型为整型 
2、定义一个getArea方法,返回矩形的面积
3、定义一个getPerimeter方法,返回矩形的周长
4、在main函数中,利用输入的2个参数分别作为矩形的长和宽,调用getArea和getPermeter方法,计算并返回矩形的面积和周长


输入:
输入2个正整数,中间用空格隔开,分别作为矩形的长和宽,例如:5 8


输出:

输出2个正整数,中间用空格隔开,分别表示矩形的面积和周长,例如:40 26

import java.util.Scanner;

/*创建一个简单的表示矩形的Rectangle类,满足以下条件:

1、定义两个成员变量height和width,表示矩形的长和宽,类型为整型 
2、定义一个getArea方法,返回矩形的面积
3、定义一个getPerimeter方法,返回矩形的周长
4、在main函数中,利用输入的2个参数分别作为矩形的长和宽,调用getArea和getPermeter方法,计算并返回矩形的面积和周长

输入:
输入2个正整数,中间用空格隔开,分别作为矩形的长和宽,例如:5 8

输出:
输出2个正整数,中间用空格隔开,分别表示矩形的面积和周长,例如:40 26
*/
public class javatest004 {
	int height;
	int width;
	public int getArea()
	{
		return this.width*this.height;
	}
	public int getPerimeter()
	{
		return (this.width+this.height)*2;
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		javatest004 rectangle=new javatest004();
		System.out.println("请输入矩形的长和宽:");
		Scanner in=new Scanner(System.in);
		rectangle.width=in.nextInt();
		rectangle.height=in.nextInt();
		System.out.println(rectangle.getArea()+" "+rectangle.getPerimeter());
		in.close();
	}

}
编写一个表示二维平面上的点的类MyPoint,满足以下条件:
1、定义private的成员变量x和y,表示点的x和y坐标,类型为double
2、定义两个MyPoint的构造方法,一个构造方法不带参数,而且x和y的初始值为0,另一个构造方法有两个参数,参数名为x和y,类型为double,用这两个参数分别作为初始x和y坐标
3、定义一个getD方法,有一个类型为MyPoint的对象参数,功能为返回当前对象和参数对象这两个坐标点的距离,返回值为double类型
4、编写测试的main方法,调用getD计算两个点之间的距离


输入:
输入2行数据, 总共4个有理数。每2个数据一组,表示一个点的x和y坐标,每行的2个数据用空格隔开。例如:
200.1 200.2
200.3 200.4


输出:
输出两个点之间的距离。例如:
0.28284271247464315
import java.util.Scanner;

/*
 * javatest005
 *
 * 编写一个表示二维平面上的点的类MyPoint,满足以下条件:
1、定义private的成员变量x和y,表示点的x和y坐标,类型为double
2、定义两个MyPoint的构造方法,一个构造方法不带参数,而且x和y的初始值为0,另一个构造方法有两个参数,参数名为x和y,类型为double,用这两个参数分别作为初始x和y坐标
3、定义一个getD方法,有一个类型为MyPoint的对象参数,功能为返回当前对象和参数对象这两个坐标点的距离,返回值为double类型
4、编写测试的main方法,调用getD计算两个点之间的距离

输入:
输入2行数据, 总共4个有理数。每2个数据一组,表示一个点的x和y坐标,每行的2个数据用空格隔开。例如:
200.1 200.2
200.3 200.4

输出:
输出两个点之间的距离。例如:
0.28284271247464315

 */
public class MyPoint {
	private double x;
	private double y;
	MyPoint()
	{
		this.x=0;
		this.y=0;
	}
	MyPoint(double x,double y)
	{
		this.x=x;
		this.y=y;
	}
	public double getD(MyPoint point)
	{
		return Math.sqrt((this.x-point.x)*(this.x-point.x)+(this.y-point.y)*(this.y-point.y));
	}
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner in=new Scanner(System.in);
		System.out.println("请输入两组坐标以计算两点之间的距离:");
		MyPoint point00=new MyPoint(in.nextDouble(),in.nextDouble());
		MyPoint point01=new MyPoint(in.nextDouble(),in.nextDouble());
		in.close();
		System.out.println(point00.getD(point01));
	}

}
 编写一个三角形类,能根据输入的3个double类型数据构造三角形对象,定义三个构造方法。
如果这3个数据满足构成三角形的条件,直接构造三角形。
否则,如果3个数的最大值大于0,则自动构造以最大值为边的等边三角形。
如果最大值也不大于0,则将三角形类的三边都初始化为0。
再定义一个getArea方法,计算所构造的三角形的面积,返回类型为double。
最后,编写main方法,测试getArea方法,计算三角形的面积。


输入:
输入三个有理数,中间用空格隔开。例如:
8.9 6.4 7.2


输出:
输出三角形的面积。例如:
22.78812396293297

import java.util.Scanner;

/*javatest006
 * 编写一个三角形类,能根据输入的3个double类型数据构造三角形对象,定义三个构造方法。
如果这3个数据满足构成三角形的条件,直接构造三角形。
否则,如果3个数的最大值大于0,则自动构造以最大值为边的等边三角形。
如果最大值也不大于0,则将三角形类的三边都初始化为0。
再定义一个getArea方法,计算所构造的三角形的面积,返回类型为double。
最后,编写main方法,测试getArea方法,计算三角形的面积。

输入:
输入三个有理数,中间用空格隔开。例如:
8.9 6.4 7.2

输出:
输出三角形的面积。例如:
22.78812396293297
 */
public class Triangle {
	private double a;
	private double b;
	private double c;
	Triangle()
	{
		this.a=0;
		this.b=0;
		this.c=0;
	}
	Triangle(double a,double b,double c)
	{
		this.a=a;
		this.b=b;
		this.c=c;
	}
	Triangle(double max)
	{
		this.a=this.b=this.c=max;
	}
	public double getArea()
	{
		double p=0.5*(this.a+this.b+this.c);
		return Math.sqrt(p*(p-this.a)*(p-this.b)*(p-this.c));
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Triangle triangle;
		System.out.println("请输入三角形的三条边:");
		Scanner in=new Scanner(System.in);
		double a=in.nextDouble();
		double b=in.nextDouble();
		double c=in.nextDouble();
		in.close();
		if(a<0||b<0||c<0)
		{
			triangle=new Triangle();
		}else
		{
			if(a+b>c&&b+c>a&&a+c>b)
			{
				triangle=new Triangle(a,b,c);
			}
			else
			{
				triangle=new Triangle(Math.max(a, Math.max(c, b)));
			}
		}
		System.out.println(triangle.getArea());

	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值