1、写一个猜数游戏,由程序生成一个100以内的整数,然后让用户猜,如果猜的数大于此数,告诉用户大了否则,如果小于该数,告诉用户小了,直到用户猜中为止。
产生随机整数的方法如下:
int number = (int)(Math.random()*100);
import java.util.Scanner;
public class CaiShu{
public static void main(String[] args){
int number = (int)(Math.random()*100);
boolean flag = true;
while(flag){
System.out.print("请您猜猜随机产生的整数是:");
Scanner scan = new Scanner(System.in);
int num = scan.nextInt();
if(num > number){
System.out.println("不好意思,您猜的数字偏大了!");
} else if(num < number){
System.out.println("不好意思,您猜的数字偏小了!");
}else{
System.out.println("恭喜您,猜对了!");
break;
}
}
System.out.println("随机产生的整数是:" + number);
}
}
2、个人所得税计算器:编写程序实现个人所得税的计算,要求输入工资总额和三险一金总额,求出本月应纳个税。全月应纳税所得额=本月工资总额—三险一金—个税起征点(2000.00)
个人所得税率计算表:
级数 全月应纳税所得额 税率(%)
1 不超过500元的 5
2 超过500元至2,000元的部分 10
3 超过2,000元至5,000元的部分 15
4 超过5,000元至20,000元的部分 20
5 超过20,000元至40,000元的部分 25
6 超过40,000元至60,000元的部分 30
7 超过60,000元至80,000元的部分 35
8 超过80,000元至100,000元的部分 40
9 超过100,000元的部分 45
import java.util.Scanner;
public class JiShui {
public static void main(String[] args){
System.out.print("请你输入你的月工资总额:");
Scanner scan = new Scanner(System.in);
double salary = scan.nextDouble();
System.out.print("请输入你的三险一金总额:");
double d = scan.nextDouble();
double jishui = salary - d - 2000.0;
if(jishui < 0){
System.out.println("国家可怜你,你不用交税!");
}else if(jishui < 500){
System.out.println("你应交" + jishui * 0.05 + " 元税钱!");
}else if(jishui >= 500 && jishui < 2000){
System.out.println("你应交" + jishui * 0.10 + " 元税钱!");
}else if(jishui > 2000 && jishui >= 5000){
System.out.println("你应交" + jishui * 0.15 + " 元税钱!");
}else if(jishui > 5000 && jishui <= 20000){
System.out.println("你应交" + jishui * 0.20 + " 元税钱!");
}else if(jishui > 20000 && jishui <= 40000){
System.out.println("你应交" + jishui * 0.25 + " 元税钱!");
}else if(jishui > 40000 && jishui <= 60000){
System.out.println("你应交" + jishui * 0.30 + " 元税钱!");
}else if(jishui > 600000 && jishui <= 800000){
System.out.println("你应交" + jishui * 0.35 + " 元税钱!");
}else if(jishui > 800000 && jishui <= 1000000){
System.out.println("你应交" + jishui * 0.40 + " 元税钱!");
}else{
System.out.println("你应交" + jishui * 0.45 + " 元税钱!");
}
}
}
3、写一个类Person,包含以下属性:String name; int age; boolean gender;Person partner。为Person类写一个marry(Person p)方法,代表当前对象和p结婚,如若可以结婚,则输出恭贺信息,否则输出不能结婚原因。要求在另外一个类中写一个主方法,来测试以上程序。(下列情况不能结婚:1,同性;2,未达到结婚年龄,男<24,女<22;3,某一方已婚)
class Person{
String name;
int age;
boolean gender;
Person partner;
Person(String name, int age, boolean gender, Person partner){
this.name = name;
this.age = age;
this.gender = gender;
this.partner = partner;
}
public void marry(Person p){
if(this.gender == p.gender){
System.out.println("同性不可以结婚!");
}else if(this.partner != null || p.partner != null){
System.out.println("男性或女性已结婚,你们不可以结婚!");
}else{
if((true == this.gender && this.age < 24) || (true == p.gender && p.age < 24) ){
System.out.println("男性小于24岁!");
return;
}
if((false == this.gender && this.age < 22) || (false == p.gender && p.age < 22)){
System.out.println("女性小于22岁!");
}else{
System.out.println("祝 " + this.name + " 与 " + p.name + " 新婚快乐!");
}
}
}
}
public class MarryTest{
public static void main(String[] args){
Person tom = new Person("tom", 29, true, null);
Person jerry = new Person("jerry", 29, false, null);
tom.marry(jerry);
}
}