玫瑰花数和分数等级划分

1.
// 根据用户输入的4位数判断是否为玫瑰花数。
// 玫瑰花数=个位^4+十位^4+百位^4+千位^4
// 分析:1.获取用户输入的数字: Scanner
// 2.判断用户输入的数字是否为4位数
// 3.将用户输入的数字进行分解,个位,十位,百位,千位
// 4.判断是否为玫瑰花数:玫瑰花数=个位^4+十位^4+百位^4+千位^4
public class Rose {
	public static void main(String[] args) {
		// 定义个位,十位,百位,千位
		int g, s, b, q;
		System.out.println("请输入一个四位数:");
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		// 限定范围
		if (1000 <= a && a <= 9999) {
			// 个位
			g = a % 10;
			// 十位
			s = a / 10 % 10;
			// 百位
			b = a / 100 % 10;
			// 千位
			q = a / 1000;
			// 判断输入的那个数(a)是否是否满足(a=g*g*g*g+s*s*s*s+b*b*b*b+q*q*q*q)
			if (a == Math.pow(g, 4) + Math.pow(s, 4) + Math.pow(b, 4)
					+ Math.pow(q, 4)) {
				System.out.println("这个数是玫瑰花数!");
			} else
				System.out.println("这个数不是玫瑰花数!");
		} else
			System.out.println("这个数不是玫瑰花数!");

	}
}
2.
// 使用switch结构或多重if分支结构动态输出学员成绩所属等级
// 90~100:A类
// 80~90:B类
// 70~80:C类
// 60~70:D类
// 60以下:E类
// 分析:switch只能做等值判断,必须将指定分数段的分数转换成某一个具体数字才能进行比较。
// 100:除以10商为10
// 90~99:除以10商为9
// 80~90:除以10商为8
// ...

public class Grade {
	/*
	public static void main(String[] args) {
		System.out.println("请输入一个分数");
		Scanner sc = new Scanner(System.in);
		double a = sc.nextDouble();
		if (0 <= a && a <= 100) {
			if (90 <= a && a <= 100) {
				System.out.println("A级");
			}
			if (80 <= a && a < 90) {
				System.out.println("B级");
			}
			if (70 <= a && a < 80) {
				System.out.println("C级");
			}
			if (60 <= a && a < 70) {
				System.out.println("D级");
			}
			if (0 <= a && a < 60) {
				System.out.println("E级");
			}

		} else{
			System.out.println("输出有误!");
		}
	}*/
	//第二种方法
	@Test
	public void d(){
		System.out.println("请输入一个分数");
		Scanner sc = new Scanner(System.in);
		double a = sc.nextDouble();
		int b=(int)a/10;
		if(0<=a&&a<=100){
		switch(b){
		case 10:
			System.out.println("A级");
			break;
		case 9:
			System.out.println("B级");
			break;
		case 8:
			System.out.println("C级");
			break;
		case 7:
			System.out.println("D级");
			break;
		case 6:
			System.out.println("E级");
			break;	
		default:
			System.out.println("E级");
			break;
		}
		}else{
			System.out.println("输出错误!");
		}
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值