”你得有本事,才有资格任性“,我是梦阳辰,快和我一起学习起来吧!
文章目录
选择结构
E201_02_01的士计价器
题目要求:嘉兴市出租车,起步价(2公里以内)为7元,超过2公里的按照每公里3元计算。要求根据路程计算费用。
解题思路:
(1) 输入路程
(2) 根据条件计算费用
(3) 输出费用。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_01_DiShi {
public static void main(String[] args){
System.out.println("请输入出行的路程:");
Scanner scan = new Scanner(System.in);
float distance = scan.nextFloat();
float price;
if(distance>0&&distance<=2){
price= 7f;
}
else if(distance>2){
price = 7F+(distance-2)*3;
}
else {
price = 0;
}
System.out.println("你的费用为"+price);
}
}
E201_02_02判断闰年
题目要求:闰年的条件是能被4整除,但不能被100整除;或能被400整除。
解题思路:
(1) 输入年份
(2) 通过闰年的条件能被4整除,但不能被100整除;或能被400整除,判断年份是否时闰年。
(3) 输出结果。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_02_RunNian {
public static void main(String[] args) {
System.out.println("请输入年份:");
Scanner scan = new Scanner(System.in);
int year = scan.nextInt();
int flag= 0;
if(year%4==0&&year%100!=0){
flag=1;
}
else if(year%400==0){
flag=1;
}
if(flag==1){
System.out.printf("%d是闰年!",year);
}
else{
System.out.printf("%d不是闰年!",year);
}
}
}
E201_02_03分段函数
题目要求: 使用选择结构,输入X的值,求处对应的f(x)的值。
注:f(x)可使用y代替。
解题思路:
(1) 输入x的值。
(2) 判断x和0的大小,计算f(x)的值。
(3) 输出f(x)的值。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_03_FenDuanHanShu {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入x的值:");
float x = scan.nextFloat();
float result;
if(x>=0){
result = x*x-4*x+6;
}
else {
result = x+6;
}
System.out.println("结果为:"+result);
}
}
E201_02_04按性别计算输血量
题目要求:根据性别和体重计算输血量。女性体重不超过50kg的输血量为200毫升,否则250毫升;男性不超过60kg的输血量为250毫升,否则300毫升。
解题思路 :
(1) 输入性别。
(2) 输入体重。
(3) 女性体重不超过50kg的输血量为200毫升,否则250毫升;男性不超过60kg的输血量为250毫升,否则300毫升。
(4) 输出结果。
测试代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_04_ShuXueLiang {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入性别:");
String sex = scan.nextLine();
System.out.println("请输入体重(kg):");
int result=0;
float weight = scan.nextFloat();
if("男".equals(sex)){
if(weight<=60)
result=250;
else
result = 300;
}
else if("女".equals(sex)){
if(weight<=50){
result = 200;
}
else{
result = 250;
}
}
else {
System.out.println("请输入正确的性别!(男/女)");
}
System.out.println("你的输血量为:"+result+"ml");
}
}
E201_02_05温度调节
题目要求:当气温高于26℃时,需要开启制冷空调;气温低于10℃则开启制热空调;其余情况只需要开启送风模式即可。编制自动温控程序,控制操作用输出相应的提示字符串来模拟,比如“开启制冷”。
解题思路:
(1) 输入气温。
(2) 判断气温是否超过26度,超过就制冷。
(2.1)如果气温低于10度,就制热,在两者中间则送风。
(3)输入结果。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_05_WenKong {
public static void main(String[] args) {
System.out.println("请输入当前的气温:(摄氏度)");
Scanner scan = new Scanner(System.in);
float temperature = scan.nextFloat();
if(temperature>26){
System.out.println("开启制冷!");
}
else if(temperature<10){
System.out.println("开启制热!");
}
else{
System.out.println("开启送风!");
}
}
}
E201_02_06购买火车票
题目要求:假设从A地到B地的火车票有硬座和硬卧,价格分别为100和190元。根据铁路部门规定,未成年人(18周岁以下)身高不足120cm免票,120(含)-150(不含)cm需半票,150及以上的需全票,未成年人卧铺只能减免硬座的半价。请设计一个购票程序,要求输入年龄和身高(未成人需要输入)以及票的类型,输出票的价。
解题思路:
(1)输入年龄,身高,票型。
(2)如果买的是硬座未成年人(18周岁以下)身高不足120cm免票,120(含)-150(不含)cm需半票,150及以上的需全票,成年人全票。如果买的是卧铺,未成年人卧铺只能减免硬座的半价。成年人全票。
(3)输出价格。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_06_MaiHuoChePiao {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入年龄:");
int age = scan.nextInt();
System.out.println("请输入票型:");
String ticketType =scan.next();
float price = 0;
if(age>=18){
if("硬座".equals(ticketType)){
price=100;
}
if("硬卧".equals(ticketType)){
price=190;
}
}
else{
System.out.println("请输入身高:");
float height = scan.nextFloat();
if("硬座".equals(ticketType)&&height<120){
price=0;
}
if("硬座".equals(ticketType)&&height<150&&height>=120){
price=100/2;
}
if("硬座".equals(ticketType)&&height>=150){
price=100;
}
if("硬卧".equals(ticketType)){
price=190-50;
}
}
System.out.println("你需要支付的价格为:"+price);
}
}
E201_02_07阶梯电价
题目要求:根据《福建省电网销售电价表》,居民生活用电按3个梯度收费:月用电量150千瓦时及以下部分,每千瓦时0.4463元,151—400千瓦时部分为0.4663元,401千瓦时以上部分为0.5663元,请编写程序,当输入用户的用电量时,计算出所需付的费用。
解题思路:
(1) 输入月用电量。
(2) 根据月用电量150千瓦时及以下部分,每千瓦时0.4463元,151—400千瓦时部分为0.4663元,401千瓦时以上部分为0.5663元计算费用。
(3) 输出费用。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_07JieTiDianJia {
public static final float PRICE1=0.4463f;
public static final float PRICE2=0.4663f;
public static final float PRICE3=0.5663f;
public static void main(String[] args) {
System.out.println("请输入月用电量(千瓦):");
Scanner scan = new Scanner(System.in);
float electricityConsumption = scan.nextFloat();
float price =0f;
if(electricityConsumption<=150){
price = electricityConsumption*PRICE1;
}
if(electricityConsumption>150&&electricityConsumption<=400){
price = 150*PRICE1+(electricityConsumption-150)*PRICE2;
}
if(electricityConsumption>400){
price = 150*PRICE1+250*PRICE2+(electricityConsumption-400)*PRICE3;
}
System.out.println("你需要支付的电费为:"+price);
}
}
E201_02_08个税计算器
题目要求:要求输入工资,计算应交个税额。
个税额 = 全月应纳税所得额税率-速算扣除数
全月应纳税所得额 = (应发工资-四金)-3500
假设四金700元,3500元为起征点
应纳税所得额(含税) 税率(%) 速算扣除数
不超过1500元的 3 0
超过1500元至4,500元的部分 10 105
超过4,500元至9,000元的部分 20 555
超过9,000元至35,000元的部分 25 1,005
超过35,000元至55,000元的部分 30 2,755
超过55,000元至80,000元的部分 35 5,505
超过80,000元的部分 45 13,505
解题思路:
(1) 输入工资。
(2) 根据:全月应纳税所得额 = (应发工资-四金)-3500求出应纳税所得额。根据:个税额 = 全月应纳税所得额税率-速算扣除数求个税额。
3) 输出结果。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_08_GeShuiJiSuanQi {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入你的工资:");
float salary = scan.nextFloat();
float taxableIncome = salary-700-3500;
float individualTax =0;
if(taxableIncome<=1500){
individualTax =taxableIncome*0.03f;
}
else if(taxableIncome<=4500){
individualTax =1500*0.03f+(taxableIncome-1500)*0.1f-105;
}
else if(taxableIncome<=9000){
individualTax =1500*0.03f+3000*0.1f-105+(taxableIncome-4500)*0.2f-555;
}
else if(taxableIncome<=35000){
individualTax =1500*0.03f+3000*0.1f-105+4500*0.2f-555+(taxableIncome-9000)*0.25f-1005;
}
else if(taxableIncome<=55000){
individualTax =1500*0.03f+3000*0.1f-105+4500*0.2f-555+26000*0.25f-1005+(taxableIncome-35000)*0.3f-2755;
}
else if(taxableIncome<=80000){
individualTax =1500*0.03f+3000*0.1f-105+4500*0.2f-555+26000*0.25f-1005+20000*0.3f-2755+(taxableIncome-55000)*0.35f-5505;
}
else if(taxableIncome>80000){
individualTax =1500*0.03f+3000*0.1f-105+4500*0.2f-555+26000*0.25f-1005+20000*0.3f-2755+25000*0.35f-5505+(taxableIncome-80000)*0.45f-13505;
}
System.out.println("应交个税额为:"+individualTax);
}
}
E201_02_09判断体型
题目要求:BMI(Body Mass Index)指数,即身体质量指数,简称体质指数,是用体重公斤数除以身高米数平方得出的数字,是目前国际上常用的衡量人体胖瘦程度以及是否健康的一个标准。输入体重和身高,输出体型描述。
BMI 体型描述
<18.5 体重过低
[18.5,25) 正常
[25,30) 肥胖前期
[30,35) I度肥胖
[35,40) II度肥胖
≥40 Ⅲ度肥胖
解题思路:
(1) 输入体重和身高。
(2) 计算体重和身高比。
(3) 输出结果。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_09PanDuanTiXing {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入体重:(kg)");
float weight = scan.nextFloat();
System.out.println("请输入身高:(米)");
float height = scan.nextFloat();
float BMI = weight/height;
if(BMI<18.5){
System.out.println("体重过低!");
}
else if(BMI<25&&BMI>=18.5){
System.out.println("正常!");
}
else if(BMI>=25&&BMI<30){
System.out.println("肥胖前期!");
}
else if(BMI>=30&&BMI<35){
System.out.println("I度肥胖!");
}
else if(BMI>=35&&BMI<40){
System.out.println("II度肥胖!");
}
else{
System.out.println("III度肥胖!");
}
}
}
E201_02_10奖金发放
题目要求:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
解题思路:
(1) 输入利润。
(2) 按题目要求计算奖金。
(3) 输出结果。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_10_JiangJinFaFang {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入当月的利润:(万元)");
float profit = scan.nextFloat();
float bonuses = 0f;
if(profit<=10){
bonuses = profit*0.1f;
}
else if(profit<=20){
bonuses = 10*0.1f+(profit-10)*0.075f;
}
else if(profit<=40){
bonuses = 10*0.1f+10*0.075f+(profit-20)*0.05f;
}
else if(profit<=60){
bonuses = 10*0.1f+10*0.075f+20*0.05f+(profit-40)*0.03f;
}
else if(profit<=100){
bonuses = 10*0.1f+10*0.075f+20*0.05f+20*0.03f+(profit-60)*0.015f;
}
else if(profit>100){
bonuses = 10*0.1f+10*0.075f+20*0.05f+20*0.03f+40*0.015f*(profit-100)*0.01f;
}
System.out.println("你的奖金为:"+bonuses+"万元!");
}
}
E201_02_11判断季节
题目要求:要求输入月份,判断该月所处的季节并输出季节(假设:12、1、2月为冬季,依次类推)
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_11_PanDuanJiJie {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入月份:");
int month = scan.nextInt();
if(month==12||month==1||month==2){
System.out.println("冬季!");
}
else if(month>2&&month<=5){
System.out.println("春季!");
}
else if(month>5&&month<=8){
System.out.println("夏季!");
}
else if(month>8&&month<=11){
System.out.println("秋季!");
}
}
}
E201_02_11四则运算器
题目要求:要求操作符和两个操作数,执行相应的四则运算。
程序代码:
package HomeWork.Part2;
import java.util.Scanner;
public class HomeWork_Part2_12_SiZeYunSuan {
public static void main(String[] args) {
System.out.println("请输入你要进行的运算:(加减乘除)");
Scanner scan = new Scanner(System.in);
String symbol = scan.nextLine();
System.out.println("请输入第一个数据:");
float num1 = scan.nextFloat();
System.out.println("请输入第二个数据:");
float num2 = scan.nextFloat();
float result =0f;
//进行加减乘除运算
switch(symbol){
case "加":result = num1+num2;break;
case "减":result = num1-num2;break;
case "乘":result = num1*num2;break;
case "除":
if(num2==0){
System.out.println("除数不能为0:");
}else{
result = num1/num2;
}break;
default:
System.out.println("请输入加减乘除运算!");break;
}
System.out.println(result);
}
}
决定你上限的不是能力,而是格局。
关注公众号【轻松玩编程】回复关键字“电子书”,“计算机资源”,“Java从入门到进阶”,”JavaScript教程“,“算法”,“Python学习资源”,“人工智能”等即可获取学习资源。