4.2上机练习

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

package class1;

public class class1 {
    public static void main(String[] args) {
        for(int i=100;i<1000;i++){
        int bai=i/100%10; //236
        int shi = i/10%10;
        int ge = i%10;
        if(i==bai*bai*bai+shi*shi*shi+ge*ge*ge){
        System.out.println(i);
        }
        }
        }
        }

2.在控制台输出以下图形

public static void main(String[] args) {
                 for(int i=1;i<7;i++) {
                     for(int j=1;j<=i;j++) {
                         System.out.print(j);
                     }
                     System.out.println();
                 }
             }
         }

package class11;

import java.util.Scanner;

public class class1 {
      public static void main(String[] args) {
          for(int i=1;i<7;i++) {
              for(int j=1;j<=7-i;j++) {
                  System.out.print(j);
              }
              System.out.println();
          }
      }
  }

 

 

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

package class11;

import java.util.Scanner;

public class class1 {

public static void main(String[] args) {
        Scanner in = new Scanner (System.in);
        System.out.println("请输入年月日");
        int year= in.nextInt();
        int month = in.nextInt();
        int day=in.nextInt();
        int day1=0;
        if(month>2){
           day1=renNian(year);
        }
 
        int day2=month(month);
        int total=0;
        total=day1+day2+day;
        System.out.println(total);
        }
 
 
public static int renNian(int year){
        if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
        return 29;
        }else{
        return 28;
        }
        }
 
public static int month(int month){
        int  sum = 0;
        for(int i=1;i<month;i++){
        sum+=getMonth(i);
        }
        return sum;
        }
public static int  getMonth(int i){
        switch(i){
        case 1:
        case 3:
        case 5:
        case 7:
        case 8:
        case 10:
        case 12:
        return 31;
        case 4:
        case 6 :
        case 9:
        case 11 :
        return 30;
default:
        return 0;
        }
        }
}

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

 

package class11;

import java.util.Scanner;

public class class1 {

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

 

posted on 2020-04-02 12:02  iM59  阅读(166)  评论(0编辑  收藏  举报

导航