4.2上机作业

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

public class fourth {
    public static void main(String[] args) {
        for (int i = 100; i <1000 ; i++) {

            int BaiNum = i/100;
            int ShiNum = i/10%10;
            int GeNum = i%10;
            if(BaiNum*BaiNum*BaiNum + ShiNum*ShiNum*ShiNum+GeNum*GeNum*GeNum == i) {
            System.out.println(i+"为水仙花数");

            }

        }
    }

}

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

(1)

public class fourth {
    public static void main(String[] args) {
        int n,i;
        for(n=1;n<=6;n++){
        for(i=1;i<=n;i++)
                System.out.print(i);
                System.out.printf("\n");
        }
    }
}

(2)

public class fourth {
    public static void main(String[] args) {
        int n,i;
        for(n=1;n<=6;n++){
            for(i=1;i<=7-n;i++){
                System.out.print(i);
            }
                System.out.printf("\n");
        }
    }
}

(3)

public class fourth {
    public static void main(String[] args) {
        for(int a = 1;a <= 6;a++)
        { 
            for(int i = 1;i <= 2 * (6 - a);i++)
                System.out.print(" ");
            for(int i = a;i >= 1;i--)
                System.out.printf("%d ",i);
            System.out.print("\n");
        }
        System.out.print("\n");
    }

 

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

import java.util.*;
public class fourth {
    public static void main(String[] args) {
        int day=0;
        int month=0;
        int year=0;
        int sum=0;
        int leap;
        System.out.println("请输入年  月  日");
        Scanner input=new Scanner(System.in);
        year=input.nextInt();
        month=input.nextInt();
        day=input.nextInt();
        switch(month)  
        {
        case 1:
            sum=0;break;
        case 2:
            sum=31;break;
        case 3:
            sum=59;break;
        case 4:
            sum=90;break;
        case 5: 
            sum=120;break;
        case 6:
            sum=151;break;
        case 7:
            sum=181;break;
        case 8:
            sum=212;break;
        case 9:
            sum=243;break;
        case 10:
            sum=273;break;
        case 11:
            sum=304;break;
        case 12:
            sum=334;break;
        default:
            System.out.println("请正确的输入年  月  日");break;
            }
        sum=sum+day;
        if(month>=0&&month<=12&&day>=1&&day<=31)
          {
        if(year%400==0||year%4==0&&year%100!=0)
        {   leap=1;
        }else{
            leap=0;
        }
        if(leap==1&&month>2)
        {
            sum++;
            System.out.println(year+"年"+month+"月"+day+"号是这一年的第"+sum+"天。");
        }else {
            System.out.println(year+"年"+month+"月"+day+"号是这一年的第"+sum+"天。");
                }
            }
    }
}

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

import java.util.*;
public class fourth {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个4位整数:");
           int x = sc.nextInt();
           if(x>999 && x<=9999){
               int gewei = x%10;
               int shiwei = x % 100 / 10;
               int baiwei = x%1000/100;
               int qianwei = x/1000;
               int sum = qianwei + baiwei*10 +shiwei*100 +gewei*1000;
               System.out.println(sum);
           }
           else{
               System.out.println("输入错误");
           }
    }
}

posted @ 2020-04-02 12:28  梦醒117  阅读(132)  评论(0编辑  收藏  举报