软件测试保费费率计算
·
**
软件测试保险费率计算
等价划分法、边界值分析法
通过方法和条件语句进行数值运算,方法有很多。一下代码是通过Java定义简单类进行方法运算,项目编写前期,正值复习到封装,继承,多态,但,在本实验里并不恰使用复杂语句,为减少代码冗余度,才有下结果。
保险公司计算保费费率的程序 某保险公司的人寿保险的保费计算方式为: 投保额×保险费率 其中,保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为 0.1%;而点数又是由 投保人的年龄、性别、婚姻状况和抚养人数来决定。
废话不多说,上项目!
**一.项目介绍

二.项目代码
//参数:姓名,年龄,性别婚姻情况,扶养人个数
//先规定保险金额。
//保费=投保金额X保险费率
//类:1.投保金额2.年龄3.性别4.婚姻情况5.抚养人个数
package persion;
import java.util.Scanner;
public class insuDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入你的姓名:");
String name = sc.next();
int age = age();// 年龄
String sex = sex();// 性别
String marry = marry();// 婚姻
int money = money();// 投保金额
int salary = salary();// 抚养人数
float baofei = bo(age, sex, marry, salary, money);
System.out.println("参保人:" + name + "的保费是:" + baofei);
}
public static int age() {
Scanner sc = new Scanner(System.in);
System.out.print("你的年龄是:");
int age = sc.nextInt();
if (age > 120 || age < 0) {
System.out.println("您输入的年纪有误,请重新输入:");
age();
}
return age;
}
public static String sex() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入性别(男性,女性):");
String sex = sc.next();
switch (sex) {
case "男性":
break;
case "女性":
break;
default:
System.out.println("您输入的性别有误,请重新输入");
sex();
break;
}
return sex;
}
public static String marry() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入您的婚姻状况(已婚或者未婚):");
String marry = sc.next();
switch (marry) {
case "已婚":
break;
case "未婚":
break;
default:
System.out.println("您输入的婚姻状况有误,请重新输入(已婚或者未婚):");
marry();
break;
}
return marry;
}
//抚养人数
public static int salary() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入您抚养人数:");
int salary = sc.nextInt();
if (salary > 7 || salary < 0) {
System.out.println("您输入的抚养人数有误,请重新输入:");
salary();
}
return salary;
}
// 输入投保金额
public static int money() {
Scanner sc = new Scanner(System.in);
System.out.print("请输入投保金额:");
int money = sc.nextInt();
if (money < 0) {
System.out.println("您输入的金额有误,请重新输入:");
money();
}
return money;
}
private static float bo(int age, String sex, String marry, int salary, int money) {
int count = 0;
// 判断年纪
if (age > 20 && age < 39) {
count += 6;
} else if (age > 40 && age < 59) {
count += 4;
} else {
count += 2;
}
// 判断性别
if (sex.equals("男性")) {
count += 5;
} else if (sex.equals("女性")) {
count += 3;
}
// 判断婚姻状况
if (marry.equals("已婚")) {
count += 3;
} else if (marry.equals("未婚")) {
count += 5;
}
// 判断抚养人数
switch (salary) {
case 0:
break;
case 1:
count -= 0.5;
break;
case 2:
count -= 0.5;
break;
case 3:
count -= 0.5;
break;
case 4:
count -= 0.5;
break;
case 5:
count -= 0.5;
break;
case 6:
count -= 0.5;
break;
default:
break;
}
// 将点数四舍五入
int counts = Math.round(count);
// 根据点数判断
if (counts >= 10) {
return (float) (money * 0.006);
} else {
return (float) (money * 0.001);
}
}
}
三.等价分析和测试用例

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)