第五周上机作业

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

package test;
import java.util.Scanner;
public class ree{

    public static void main(String[] args) {
    int a,b,c;
    System.out.println("三位数中所有的水仙花数:");
    for(int n=100;n<=999;n++){
        a=n/100;//获取百位数字
        b=n%100/10;//获取十位数字
        c=n%10;//获取个位数字
        if(a*a*a+b*b*b+c*c*c==n){
            System.out.println(n);
        }
    }
    }
        }

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

 

 

(1)

package www;
import java.util.Scanner;
public class test{

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        for(int a=1;a<7;a++) {
            for(int b=1;b<=a;b++) {
                System.out.print(b);
            }
            System.out.println();
      }
    }
}

(2)

package www;
import java.util.Scanner;
public class test{

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        for(int a=1;a<7;a++) {
            for(int b=1;b<=7-a;b++) {
                System.out.print(b);
            }
            System.out.println();
      }
    }
}

(3)

package www;
import java.util.Scanner;
public class test{

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
         for(int a=1;a<7;a++) {
                for(int b=a;b>0;b--) {
                    System.out.print(b);
                }
                System.out.println();
          }
        }
    }

(4)

package www;
import java.util.Scanner;
public class test{

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        for(int a=6;a>0;a--) {
            for(int b=0;b<6-a;b++) {
                System.out.print(" ");
            }
            for(int i=1;i<=a;i++) {
                System.out.print(i);
            }
            System.out.println("");
        }
    }
}

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

package www;
import java.util.Scanner;
public class test{

    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 www;
import java.util.Scanner;
public class test{

    public static void main(String[] args) {
   Scanner sc=new Scanner(System.in);
   System.out.println("请输入一个四位数");
   int x=sc.nextInt();
   
       int gewei=x%10;
       int shiwei=x%10/10;
       int baiwei=x%100/100;
       int qianwei=x/1000;
      
       System.out.println("原先的数为:"+x+"现在的为"+(qianwei+baiwei*10+shiwei*100+gewei*1000));
   }
    }

 

posted @ 2020-04-02 12:15  余归-  阅读(126)  评论(0编辑  收藏  举报