Java第二天
程序逻辑-1(分支和循环)###
- 程序的结构
- 流程图
- 分支结构
- 循环结构
- 多重循环结构
练习1:分段函数求值。
$$ f(x)=\begin{cases} 3x+5 & \text (x \lt -1) \ x-1 & \text (-1 \le x \le 1) \ 5x-3 & \text (x \gt 1) \end{cases} $$package com.lovoinfo;import java.util.Scanner;public class Fx { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("x = "); double x = sc.nextDouble(); double y; if(x < -1) { y = 3 * x + 5; } else if(x <= 1) { y = x - 1; } else { y = 5 * x - 3; } System.out.println("f(x) = " + y); sc.close(); }}
练习2:个人所得税计算。在我国,个人所得税的起征点是3500元,计算公式是:
个人所得税 = (工资收入 - 五险一金 - 个税起征点) * 税率 - 速算扣除数 其中,税率和速算扣除数可以查下表得到:级数 | 含税级距 | 税率 | 速算扣除数 |
---|---|---|---|
1 | 不超过1500元的 | 3 | 0 |
2 | 超过1500元至4500元的部分 | 10 | 105 |
3 | 超过4500元至9000元的部分 | 20 | 555 |
4 | 超过9000元至35000元的部分 | 25 | 1005 |
5 | 超过35000元至55000元的部分 | 30 | 2755 |
6 | 超过55000元至80000元的部分 | 35 | 5505 |
7 | 超过80000元的部分 | 45 | 13505 |
package com.lovoinfo;import java.util.Scanner;public class Tax { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("请输入工资: ¥"); double salary = sc.nextDouble(); double add = salary - salary * 0.08 - 3500; double tax; if(add <= 0) { tax = 0; } else if(add <= 1500) { tax = add * 0.03; } else if(add <= 4500) { tax = add * 0.1 - 105; } else if(add <= 9000) { tax = add * 0.2 - 555; } else if(add <= 35000) { tax = add * 0.25 - 1005; } else if(add <= 55000) { tax = add * 0.3 - 2755; } else if(add <= 80000) { tax = add * 0.35 - 5505; } else { tax = add * 0.45 - 13505; } System.out.printf("需要缴纳的个人所得税: ¥%.2f元\n", tax); sc.close(); }}
作业:输入一个百分制的成绩,将其转换成对应的等级,规则如下表所示:
成绩 | 等级 |
---|---|
90-100 | A |
80-89 | B |
60-79 | C |
<60 | D |
package day0423;import java.util.Scanner;public class Score { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入成绩:"); int score =sc.nextInt(); char y; if (score>=90 && score<=100 ) { y='A'; } else if (score>=80 && score<=89) { y='B'; } else if (score>=60 && score<=79) { y='C'; } else { y='D'; } System.out.println(y); sc.close(); }
练习4:输入成绩等级输出对应的评语,规则如下表所示:
成绩等级 | 评语 |
---|---|
A | 该生成绩优异,学习踏实认真 |
B | 该生积极上进,学习态度较好 |
C | 该生学习努力,成绩有待提高 |
D | 该生成绩稳定,动手能力很强 |
package com.lovoinfo;import java.util.Scanner;public class CommentSystem { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("请输入成绩等级: "); char level = sc.next().charAt(0); switch(level) { case 'a': case 'A': System.out.println("该生成绩优异,学习踏实认真"); break; case 'b': case 'B': System.out.println("该生积极上进,学习态度较好"); break; case 'c': case 'C': System.out.println("该生学习努力,成绩有待提高"); break; case 'd': case 'D': System.out.println("该生成绩稳定,动手能力很强"); break; default: System.out.println("瓜西西,输错了!"); } sc.close(); }}
练习5:将一颗色子掷60000次,统计每一面出现的次数。
package com.lovoinfo;public class ThrowDie { public static void main(String[] args) { int f1 = 0, f2 = 0, f3 = 0, f4 = 0, f5 = 0, f6 = 0; for(int i = 1; i <= 60000; i++) { int face = (int)(Math.random() * 6 + 1); switch(face) { case 1: f1++; break; case 2: f2++; break; case 3: f3++; break; case 4: f4++; break; case 5: f5++; break; case 6: f6++; break; } } System.out.println("1点出现了" + f1 + "次"); System.out.println("2点出现了" + f2 + "次"); System.out.println("3点出现了" + f3 + "次"); System.out.println("4点出现了" + f4 + "次"); System.out.println("5点出现了" + f5 + "次"); System.out.println("6点出现了" + f6 + "次"); }}
Java第二天
程序逻辑-1(分支和循环)###
- 程序的结构
- 流程图
- 分支结构
- 循环结构
- 多重循环结构
练习1:分段函数求值。
$$ f(x)=\begin{cases} 3x+5 & \text (x \lt -1) \ x-1 & \text (-1 \le x \le 1) \ 5x-3 & \text (x \gt 1) \end{cases} $$package com.lovoinfo;import java.util.Scanner;public class Fx { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("x = "); double x = sc.nextDouble(); double y; if(x < -1) { y = 3 * x + 5; } else if(x <= 1) { y = x - 1; } else { y = 5 * x - 3; } System.out.println("f(x) = " + y); sc.close(); }}
练习2:个人所得税计算。在我国,个人所得税的起征点是3500元,计算公式是:
个人所得税 = (工资收入 - 五险一金 - 个税起征点) * 税率 - 速算扣除数 其中,税率和速算扣除数可以查下表得到:级数 | 含税级距 | 税率 | 速算扣除数 |
---|---|---|---|
1 | 不超过1500元的 | 3 | 0 |
2 | 超过1500元至4500元的部分 | 10 | 105 |
3 | 超过4500元至9000元的部分 | 20 | 555 |
4 | 超过9000元至35000元的部分 | 25 | 1005 |
5 | 超过35000元至55000元的部分 | 30 | 2755 |
6 | 超过55000元至80000元的部分 | 35 | 5505 |
7 | 超过80000元的部分 | 45 | 13505 |
package com.lovoinfo;import java.util.Scanner;public class Tax { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("请输入工资: ¥"); double salary = sc.nextDouble(); double add = salary - salary * 0.08 - 3500; double tax; if(add <= 0) { tax = 0; } else if(add <= 1500) { tax = add * 0.03; } else if(add <= 4500) { tax = add * 0.1 - 105; } else if(add <= 9000) { tax = add * 0.2 - 555; } else if(add <= 35000) { tax = add * 0.25 - 1005; } else if(add <= 55000) { tax = add * 0.3 - 2755; } else if(add <= 80000) { tax = add * 0.35 - 5505; } else { tax = add * 0.45 - 13505; } System.out.printf("需要缴纳的个人所得税: ¥%.2f元\n", tax); sc.close(); }}
作业:输入一个百分制的成绩,将其转换成对应的等级,规则如下表所示:
成绩 | 等级 |
---|---|
90-100 | A |
80-89 | B |
60-79 | C |
<60 | D |
package day0423;import java.util.Scanner;public class Score { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入成绩:"); int score =sc.nextInt(); char y; if (score>=90 && score<=100 ) { y='A'; } else if (score>=80 && score<=89) { y='B'; } else if (score>=60 && score<=79) { y='C'; } else { y='D'; } System.out.println(y); sc.close(); }
练习4:输入成绩等级输出对应的评语,规则如下表所示:
成绩等级 | 评语 |
---|---|
A | 该生成绩优异,学习踏实认真 |
B | 该生积极上进,学习态度较好 |
C | 该生学习努力,成绩有待提高 |
D | 该生成绩稳定,动手能力很强 |
package com.lovoinfo;import java.util.Scanner;public class CommentSystem { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("请输入成绩等级: "); char level = sc.next().charAt(0); switch(level) { case 'a': case 'A': System.out.println("该生成绩优异,学习踏实认真"); break; case 'b': case 'B': System.out.println("该生积极上进,学习态度较好"); break; case 'c': case 'C': System.out.println("该生学习努力,成绩有待提高"); break; case 'd': case 'D': System.out.println("该生成绩稳定,动手能力很强"); break; default: System.out.println("瓜西西,输错了!"); } sc.close(); }}
练习5:将一颗色子掷60000次,统计每一面出现的次数。
```Java
package com.lovoinfo;public class ThrowDie {
public static void main(String[] args) { int f1 = 0, f2 = 0, f3 = 0, f4 = 0, f5 = 0, f6 = 0; for(int i = 1; i <= 60000; i++) { int face = (int)(Math.random() * 6 + 1); switch(face) { case 1: f1++; break; case 2: f2++; break; case 3: f3++; break; case 4: f4++; break; case 5: f5++; break; case 6: f6++; break; } } System.out.println("1点出现了" + f1 + "次"); System.out.println("2点出现了" + f2 + "次"); System.out.println("3点出现了" + f3 + "次"); System.out.println("4点出现了" + f4 + "次"); System.out.println("5点出现了" + f5 + "次"); System.out.println("6点出现了" + f6 + "次");}