第五次上机作业

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

package ssa;

public class lianxi {

    public static void main(String[] args) {       

            int b,s,g,sum=0;

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

                      b=i/100;

                      s=i/10%10;

                      g=i%10;

                    sum=b*b*b+s*s*s+g*g*g;

                      if(sum==i) {

                         System.out.print(i+" ");

                 }

                 }

       } 


2.  在控制台输出以下图形(知识点:循环语句、条件语句)

package ssa;

  

import java.util.*;

  

public class lianxi {

    public static void main(String[] args) {      

  for (int i = 1; i <=6; i++) {

            for (int j = 1; j <= i; j++) {

                System.out.print(j);

            }

            System.out.println("");

        }

        System.out.println("\n");

          

    for(int i=7;i>=1;i--){

        for(int j=1;j<=i-1;j++)

            System.out.print(j);

    System.out.println();

  

          

        

      

    }}

      

} 

package ssa;

  

import java.util.*;

  

public class lianxi {

    public static void main(String[] args) {    

for(int i=1;i<7;i++) {

                for(int j=i;j>0;j--) {

                    System.out.print(j);

                }

                System.out.println();

            }

          System.out .println("\n");

          for(int i=6;i>0;i--) {

                for(int k=0;k<6-i;k++) {

                    System.out.print(" ");

                }

                for(int j=1;j<=i;j++) {

                    System.out.print(j);

                }

                System.out.println("");

            }

    }

      

} 

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

package ssa;

  

import java.util.*;

  

public class lianxi {

    public static void main(String[] args) {   

int year;

        int mouth;

        int day = 0;

        int days;

        int d = 0;

        int e = 0;

        Scanner scanner = new Scanner(System.in);

        do {

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

            year = scanner.nextInt();

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

            mouth = scanner.nextInt();

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

            days = scanner.nextInt();

            if (year < 0 || mouth < 0 || mouth > 12 || days < 0 || days > 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;

            }

            d += day;

        }

        System.out.println("这是" + year + "年的" + (d + days) + "天");

      

}

        } 

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

package ssa;

  

import java.util.*;

  

public class lianxi {

    public static void main(String[] args) {   

    for(int i=7;i>=1;i--){

        for(int j=1;j<=i-1;j++)

            System.out.print(j);

    System.out.println();*/

  

          System.out.println("请输入需要翻转的数(范围1000~9999):");

            Scanner scanner = new Scanner(System.in);

            int opNum =scanner.nextInt();

            if(opNum>999 &&opNum<10000) {

                int gewei = opNum%10;

                int shiwei = opNum/10%10;

                int baiwei = opNum/100%10;

                int qianwei = opNum/1000%10;

  

                System.out.println("翻转后得到的数:");

                System.out.println(gewei*1000+shiwei*100+baiwei*10+qianwei);

            }

            else {

                System.out.println("范围超过1000~9999");

            }

              

        }

      

} 

 

你可能感兴趣的:(第五次上机作业)