一些用JAVA实现的小题目

1、求矩形、圆、三角形面积系统

import java.util.Scanner;

public class Work1 {
	//求矩形面积
	public double rectangleArea(){
		Scanner input = new Scanner(System.in);
		System.out.println("请输入矩形的宽:");
		int width = input.nextInt();
		System.out.println("请输入矩形的高:");
		int high = input.nextInt();
		input.close();
		return width*high;
	}
	//求圆的面积
	public double circularArea(){
		Scanner input = new Scanner(System.in);
		System.out.println("请输入圆的半径:");
		int radis = input.nextInt();
		input.close();
		return 3.14*radis*radis;
	}
		
	//求三角形的面积
	public double triangleArea(){
		Scanner input = new Scanner(System.in);
		System.out.println("请输入三角形的底:");
		int sideLength1 = input.nextInt();
		System.out.println("请输入三角形的高:");
		int sideLength2 = input.nextInt();
		input.close();
		return 0.5*sideLength1*sideLength2;
	}
	public static void main(String[] args) {
		Work1 work = new Work1();
		double area = 0;
		String shape = "";
		System.out.println("1、矩形     2、三角形      3、圆");
		System.out.println("请选择图形:");
		Scanner input = new Scanner(System.in);
		int in = input.nextInt();
		switch(in) {
		case 1:
			shape = "矩形";
			area = work.rectangleArea();
			break;
		case 2:
			shape = "三角形";
			area = work.triangleArea();
			break;
		case 3:
			shape = "圆";
			area = work.circularArea();
			break;
        default:
			break;
		}
        input.close();
		System.out.println("该"+shape+"的面积为:"+area);
	}
}

执行结果:

2、简易计算器(只需要考虑加减乘除)

import java.util.Scanner;
//简易计算器
public class Work2 {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		double result = 0;
		System.out.println("请输入算式(逐个输入)");
		int operand1 = input.nextInt();
		String operator = input.next();
		int operand2 = input.nextInt();
		input.close();
		switch (operator) {
		case "+":
			result = operand1 + operand2;
			break;
		case "-":
			result = operand1 - operand2;
			break;
		case "*":
			result = operand1 * operand2;
			break;
		case "/":
			result = operand1 / operand2;
			break;
		default:
			break;
		}
		System.out.println("result="+result);
	}
}

 执行过程:

此题注意input.next()与input.nextLine()的区别,前者视回车为结束符,后者会把回车也包含在内。

3、

某城市出租车计费问题: 

  • 每日06:00-21:00,起步价6元,当日22:00-次日05:00,起步价7元。
  • 起步价包含2公里,超出部分按照每公里1.5元收费。
  • 每次乘车加收1元的燃油附加税。

输入打车的时间和距离,计算本次打车的费用。

import java.util.Scanner;

//出租车计费问题
public class Work4 {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		double cost = 0;
		System.out.println("打车时间:");
		int time = input.nextInt();
		System.out.println("打车距离:");
		int distence = input.nextInt();
	    input.close();
	    //在06:00~21:00时间段
	    if(6<=time&&time<=21){
	    	if(distence<=2)
	    		cost = 1+6;
	    	else
	    		cost = 1+6+(distence-2)*1.5;
	    }else{//在当日22:00-次日05:00
	    	if(distence<=2)
	    		cost = 1+7;
	    	else
	    		cost = 1+7+(distence-2)*1.5;
	    }
	   System.out.println("本次打车的费用为:"+cost);
	}

}

执行结果:

此题注意&与&&的区别,&符号即使第一个表达式是错误的也会检查第二个表达式,&&当第一个表达式错误时就不会再检查第二个表达式了。|与||同样的道理。

 4、

由键盘输入三个整数分别存入变量num1、num2、num3,

对它们进行排序,并且从小到大输出。

import java.util.Scanner;
/**
 * 由键盘输入三个整数分别存入变量num1、num2、num3,
 * 对它们进行排序,并且从小到大输出。
 */
public class Work6 {
	public static void main(String[] args) {
		System.out.println("请分别输入三个整数");
		Scanner input = new Scanner(System.in);
		int num1 = input.nextInt();
		int num2 = input.nextInt();
		int num3 = input.nextInt();
		int temp = 0;
		input.close();
		//比较前两个数,小的在前面
		if(num2<num1){
			temp = num2;
			num2 = num1;
			num1 =temp;
		}
		//比较后面两个数,小的在前
		if(num3<num2){
			temp = num3;
			num3 = num2;
			num2 =temp;
		}
		//再比较前两个数
		if(num2<num1){
			temp = num2;
			num2 = num1;
			num1 =temp;
		}
		System.out.println("三个数由小到大为:"+num1+"、"+num2+"、"+num3);
	}
}

一共三个数比较三次即可,每次将较小的数交换在前。

5、

取近似值 (不使用库方法)

写出一个程序,接受一个浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。

 

import java.util.Scanner;
//取近似值 (不使用库方法)
//写出一个程序,接受一个浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。
public class Work7 {
	public static void main(String[] args) {
		System.out.println("请输入浮点数:");
		Scanner input = new Scanner(System.in);
		double number = input.nextDouble();
		input.close();
		double rear = number%1;
		double result = 0;
		if(rear>=0.5)
			result =  number-rear+1;
		else
			result = number-rear;
		System.out.println("近似值为:"+result);
	}
}

 

  • 18
    点赞
  • 108
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值