分析并完成以下需求:
1.商场根据消费金额不同,折扣也不同,折扣的规则如下(P代表消费的总金额)
P >= 2000 7折
1000 <= P < 2000 8折
500 <= P < 1000 9.5折
P < 500 不打折
2.要求根据输入的消费金额,输出对应的折扣和折扣前后的金额
public static void main(String[] args) {//创建键盘对象Scanner sc = new Scanner(System.in);System.out.println("请输入你的消费金额:");double p = sc.nextDouble();//判断if (p < 0) {System.out.println("您输入的金额有误!");} else if (p >= 2000) {System.out.println("你消费了" + p + "元,享受7折优惠,折后金额为:" + (p * 0.7));} else if (p >= 1000 && p < 2000) {System.out.println("你消费了" + p + "元,享受8折优惠,折后金额为:" + (p * 0.8));} else if (p >= 500 && p < 1000) {System.out.println("你消费了" + p + "元,享受95折优惠,折后金额为:" + (p * 0.95));} else if (p < 500) {System.out.println("您消费了" + p + "元,不享受折扣优惠!");}}
分析并完成以下需求:
1.模拟计算器,提示用户选择运算方式,[1加法/2减法/3乘法/4除法/5取余/0退出程序]
2.提示用户分别录入两个整数,然后根据运算方式进行计算
3.打印用户选择的运算方式,和运算结果(使用字符串拼接算式和结果)
public static void main(String[] args) {//创建键盘对象Scanner sc = new Scanner(System.in);//使用循环模拟多次输入的动作while (true){System.out.println("请选择运算方式[1加法/2减法/3乘法/4除法/5取余/0退出程序]:");int choose = sc.nextInt();//退出判断if (choose == 0) {System.out.println("谢谢使用,正在退出...");//退出JVM,停止控制台System.exit(0);}//错误判断if (choose < 0 || choose > 5) {System.out.println("您的选择有误!");continue;}//提示用户输入两个整数System.out.println("请输入第一个整数:");int a = sc.nextInt();System.out.println("请输入第二个整数:");int b = sc.nextInt();if (choose == 1) {System.out.println("用户选择加法");System.out.println(a + "+" + b + "=" + (a + b));} else if (choose == 2) {System.out.println("用户选择减法");System.out.println(a + "-" + b + "=" + (a - b));} else if (choose == 3) {System.out.println("用户选择乘法");System.out.println(a + "*" + b + "=" + (a * b));} else if (choose == 4) {System.out.println("用户选择除法");System.out.println(a + "/" + b + "=" + (a / b));} else if (choose == 5) {System.out.println("用户选择加法");System.out.println(a + "%" + b + "=" + (a % b));}}}
分析并完成以下需求:
1.使用随机数生成一个[1-100]的整数,提示用户猜一个整数
2.根据用户猜的整数,与随机数比较判断,打印用户猜的结果(猜对了或猜错了)
3.多次游戏,猜对了停止游戏
public static void main(String[] args) {//使用随机数,生成一个正确答案//随机数取值范围: (100) -> [0-100) -> 0~99//随机数取值万能公式:(max - min + 1) + min;int number = new Random().nextInt(100) + 1;//使用循环模拟多次猜while (true){//提示用户猜System.out.println("请输入你猜的数字[1-100]:");int guessNum = new Scanner(System.in).nextInt();//错误判断if(guessNum < 1 || guessNum > 100){System.out.println("您猜的数字有误!");}else if(guessNum > number){System.out.println("猜大了!");}else if(guessNum < number){System.out.println("猜小了");}else {System.out.println("猜对了~");//结束游戏break;}}}
分析并完成以下需求:
1.获取一个[10-100]之间的int类型随机数num,统计[10-num]之间,奇数的个数
2.最终在控制台打印所有的奇数,和个数
public static void main(String[] args) {//定义计数器int count = 0;//获取随机数int num = new Random().nextInt(100 - 10 + 1) + 10;System.out.println("随机数num:" + num);//知道数据范围,使用for循环获取所有整数for (int i = 10; i <= num; i++) {//奇数判断if (i % 2 != 0) {System.out.println(i);//计数count++;}}//打印结果System.out.println("10到" + num + "之间,奇数的个数为:" + count);}
分析并完成以下需求:
1.打印[1-1000]之间的整数,数字中包含5,或者是5的倍数的数字要跳过
2.要求控制台每行打印6个满足条件的数,之间用空格分隔
public static void main(String[] args) {//定义计数器int count = 0;//知道数据范围,使用for循环获取所有整数for (int i = 1; i <= 1000; i++) {//定义各个位置上的数int ge = i % 10;int shi = i / 10 % 10;int bai = i / 100 % 10;//判断if (ge != 5 && shi != 5 && bai != 5 && i % 5 != 0) {//满足条件的数,先一行打印,空格分隔System.out.print(i + " "); //带ln是换行打印,不带ln是一行打印//找到一个满足的记一次数count++;//对count进行判断if(count % 6 == 0){//换行 -> 空输出语句System.out.println();}}}}
分析并完成以下需求:
1.中国有闰年的说法。闰年的规则是:四年一闰,百年不闰,四百年再闰(年份能够被4整除但不能被100整除算是闰年,年份能被400整除也是闰年)
2.请打印出1988年到2019年的所有闰年年份
public static void main(String[] args) {//知道年份范围,使用for循环获取所有年份for (int year = 1988; year <= 2019; year++) {//对年份进行判断if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {System.out.println(year);}}}
分析并完成以下需求:
1.完成逢七过游戏
2.获取范围[1-100]的整数,如果是7的倍数的、或者包含7的要跳过,打印满足条件的数字
public static void main(String[] args) {//获取数据for (int i = 1; i <= 100 ; i++) {//获取各个位置上的数int ge = i % 10;int shi = i / 10 % 10;//int bai = i / 100 % 10;//判断if((ge != 7) && (shi != 7) && (i % 7 != 0)){//满足条件的数字System.out.println(i);}}}
分析并完成以下需求:
1.按照从大到小的顺序输出四位数中的:个位+百位=十位+千位 的数字及个数
2.每行输出5个满足条件的数,之间用空格分隔
如:9999 9988 9977 9966 9955
public static void main(String[] args) {//定义计数器int count = 0;//知道数据范围,使用for循环获取所有整数for (int i = 9999; i >= 1000; i--) {//获取各个位置上的数int ge = i % 10;int shi = i / 10 % 10;int bai = i / 100 % 10;int qian = i / 1000 % 10;//判断if (ge + bai == shi + qian) {System.out.print(i + " ");//找到一个满足的记一次数count++;//对count进行判断if(count % 5 ==0){//换行System.out.println();}}}}
分析并完成以下需求:
1.计算出5位数的回文数和7位数的回文数相差了多少个?
2.回文数是一种数字如:98789倒读也为98789正读倒读都一样这种数字就叫回文数
public static void main(String[] args) {//定义计数器int count5 = 0;int count7 = 0;//判断5位数,统计个数for (int i = 10000; i <= 99999; i++) {//定义各个位置的数int g = i % 10;int s = i / 10 % 10;int b = i / 100 % 10;int q = i / 1000 % 10;int w = i / 10000 % 10;//判断if(g == w && s == q){count5++;}}//判断7位数,统计个数for (int i = 1000000; i <= 9999999; i++) {//定义各个位置的数int g = i % 10;int s = i / 10 % 10;int b = i / 100 % 10;int q = i / 1000 % 10;int w = i / 10000 % 10;int sw = i / 100000 % 10;int bw = i / 1000000 % 10;//判断if(g == bw && s == sw && b == w){count7++;}}//计算7位的count和5位的countSystem.out.println(count7 - count5);}