Java第三次作业

发布时间 2023-04-02 18:14:06作者: aaa橘子酱

1.分别使用For循环,while循环,do…while循环求1-100之间所有能被3整除的整数的和。

for循环

package aaa;

 

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int i=1,sum=0;

        for(i=1;i<=100;i++) {

           if(i%3==0) {

               sum+=i;

           }

        }

        System.out.println(sum);

 

    }

 

}

 

While循环

package aaa;

 

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int i=1,sum=0;

        while(i<=100) {

           if(i%3==0) {

               sum+=i;

         }

           i++;

      }

        System.out.println("和为:"+sum);

    }

 

}

 

Do…while循环

package aaa;

 

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int i=1,sum=0;

        do {

           if(i%3==0) {

               sum+=i;

           }

               i++;

        }while(i<=100);

        System.out.println("和为:"+sum);

    }

 

}

2.输出0-9之间的数,但不包括5.

package aaa;

 

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int i;

        for(i=0;i<=9;i++) {

           if(i!=5) {

               System.out.println(i);

           }

        }

    }

}

3.编写一个程序,求整数n的阶乘,列如5的阶乘是1*2*3*4*5

package aaa;

import java.util.Scanner;

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        Scanner input=new Scanner(System.in);

        System.out.println("输入一个数");

        int n=input.nextInt();

        int i=1,jc=1;

        while(i<=n) {

           jc*=i;

           i++;

        }

        System.out.println("阶乘为:"+jc);

    } 

}

4.编写任意一个程序,输入任意学生成绩,如果输入不合法(<0>100,提示输入错误,重新输入,直到输入合法程序结束。

package aaa;

import java.util.Scanner;

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        Scanner input=new Scanner(System.in);

        System.out.println("输入学生成绩:");

    double a=input.nextDouble();

        while(a<0||a>100) {

           System.out.println("输入错误,重新输入");

            a=input.nextDouble();

        }

        if(a>=0&&a<=100) {

           System.out.println("输入合法程序结束");

        }

    }

 

}

5.假设某员工今年的年薪是30000元,年薪的年增长率是%6,编写一个java程序计算该员工10年后的年薪,并统计未来10年(从今年算起)总输入。

package aaa;

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        double i=30000,sum=3000;

        for(int year=1;year<=10;year++) {

           i+=i*0.06;

           sum+=i;

        }

    System.out.println("该员工10年后的年薪为:"+i);

    System.out.println("该员工未来10年的年薪为:"+sum);

    }

}

作业:

1.打印出所有的“水仙花数”,所谓“水仙花数”是指:员工三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。

package aaa;

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        int i,ge,shi,bai;

        for(i=100;i<=999;i++) {

           ge=i%10;

           shi=i/10%10;

           bai=i/100;

           if(i==ge*ge*ge+shi*shi*shi+bai*bai*bai) {

               System.out.println(i);

           }  

        }

    }

}

2.输入年月日,判断这是这一年中的第几天。

package aaa;

import java.util.Scanner;

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

    Scanner input=new Scanner(System.in);

    System.out.println("输入年");

    int year=input.nextInt();

    System.out.println("输入月");

    int mon=input.nextInt();

    System.out.println("输入日");

    int day=input.nextInt();

    int i=1,sum=0;

    for(i=1;i<mon;i++) {

    switch(i) {

    case 4:

    case 6:

    case 9:

    case 11:

        sum+=30;break;

    case 2:

        if(year%4==0&&year%100!=0||year%400==0) {

           sum+=29;

           break;

        }else{

           sum+=28;

           break;

    }default:

        sum+=31;

           }

        }  

    sum+=day;

    System.out.println("该天是"+year+"的地"+sum+"天");

    }

}

3.控制台输入一个4位数的整数,求将该数反转以后的数,如原数为1234,反转后的数为4321.

package aaa;

import java.util.Scanner;

public class text1 {

 

    public static void main(String[] args) {

        // TODO Auto-generated method stub

    Scanner input=new Scanner(System.in);

    System.out.println("输入一个4位整数");

    int a=input.nextInt();

    int b;

    while(a>0) {

        b=a%10;

        a=a/10;

        System.out.print(b);

    }

    }

}