Java第五次作业

上机练习
1.分别使用for循环,while循环,do循环求1到100之间所有能被3整除的整数的和。(知识点:循环语句)

public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a;
        int sum=0;
        for(a=1;a<=100;a++)
        {
            if(a%3==0)
            {
            
           sum=sum+a;
        
           }
            
        }System.out.println(sum);
    }

}

 

 

public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a=1;
        int sum=0;
        while(a<=100)
        {
            if(a%3==0)
            {
           sum=sum+a;
           }
            a++;
       } 
        System.out.println(sum);
    }

}

 

 

public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a=1;
        int sum=0;
        do
        { 
            if(a%3==0)
            {
            sum=sum+a;
            }
            a++; 
        }
        while(a<=100);
        System.out.println(sum);
    }

}

 

 


2.输出0-9之间的数,但是不包括5。(知识点:条件、循环语句)

import java.util.Scanner;


public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        int i=0;
        while(i<=9)
        {
            if(i!=5)
            System.out.println(i);    
            i++;
        }

    }

}

 

 


3.编写一个程序,求整数n的阶乘,例如5的阶乘是1*2*3*4*5(知识点:循环语句)

import java.util.Scanner;


public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.println("输入一个数");
        int a=input.nextInt();
        int sum=1;
        while(a>0)
            {
            sum=sum*a;
            a=a-1;
            }
        System.out.println("这个数的阶乘是");
        System.out.println(sum);
    }


}

 

 


4.编写一个程序,输入任意学生成绩,如果输入不合法(<0或者>100),提示输入错误,重新输入,直到输入合法程序结束(知识点:循环语句)

import java.util.Scanner;


public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.println("输入一个数");
        int a=input.nextInt();
        while(a<0||a>100)
            {
            System.out.println("输入错误,重新输入");
            int b=input.nextInt();
            a=b;
            }
        if(a>0&&a<100)
            System.out.println("OK");
        System.out.println(a);
    }

}

 

 


5.假设某员工今年的年薪是30000元,年薪的年增长率6%。编写一个Java应用程序计算该员工10年后的年薪,并统计未来10年(从今年算起)总收入。(知识点:循环语句)

public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        double a=30000;
        double sum=0;
        int nian=0;
        while(nian<=10)
        {
            sum=sum+a;
            a=a+a*0.6;
            nian++;
        }
        System.out.println("未来十年总收入");
        System.out.println(sum);
        while(nian<=10)
        {
            a=a*0.6;
            nian++;
        }
        System.out.println("十年的年薪");
        System.out.println(a);
    }

}

 

 

作业
1.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。(知识点:循环语句、条件语句)

public class A1 {

    /**
     * @param args
     */
     public static void main(String[] args) {
            // TODO Auto-generated method stub
            int a=100;
            while(a<1000)
            {
                if((a/100)*(a/100)*(a/100)+(a%100/10)*(a%100/10)*(a%100/10)+(a%10)*(a%10)*(a%10)==a)
                    {
                    System.out.println(a);
                    }
                a++;
            }
        }

    }

 

 


2.输入年月日,判断这是这一年中的第几天(知识点:循环语句、条件语句)

import java.util.Scanner;

public class A1 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int year;
        int mouth;
        int day = 0;
        int tian;
        int x = 0;
        int e = 0;
        Scanner input=new Scanner(System.in);
        do {
            System.out.println("输入年 月 日");
            year=input.nextInt();
            mouth=input.nextInt();
            tian=input.nextInt();
            if (year<0||mouth<0||mouth>12||tian<0||tian>31) 
            {
                System.out.println("input error!");
                e=1;
            }
        } 
        while (e==1); 
        for (int i=1;i<mouth;i++) 
        {
            switch (i)
            {
            case 1:
            case 3:
            case 5:
            case 7:
            case 8:
            case 10:
            case 12:
            {
                day=31;
                break;
            }
            case 4:
            case 6:
            case 9:
            case 11:
            {
                day=30;
                break;
            }
            case 2: 
            {
                if ((year%100!=0&&year%4==0)||(year%100==0&&year%400==0))
                {
                    day=29;
                }
                else 
                {
                    day=28;
                }
            }
            default:
                break;
            }
            x+=day;
        }
        System.out.println("这是"+year+"年的第"+(x+tian)+"天");
    }

}

 

 


3.由控制台输入一个4位整数,求将该数反转以后的数,如原数为1234,反转后的数位4321(知识点:循环语句、条件语句)

import java.util.Scanner;

public class A1 {

    /**
     * @param args
     */
     public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner input=new Scanner(System.in);
            int a=input.nextInt();
            while(a>0)
            {
                System.out.println(a%10);
                a=a/10;
            }
        }

    }

 

posted @ 2021-04-06 18:51  YilT🍬  阅读(42)  评论(0)    收藏  举报