JXNU1999python 发表于 2021-12-7 20:31

Java自学记录Day20

本帖最后由 JXNU1999python 于 2021-12-7 20:32 编辑

Java学习记录Day20

一、完成作业

1、题目:一个5位数,判断它是不是回文数。即12321是回文数,
个位与万位相同,十位与千位相同。注:为方便格式显示,省略class类型。

      import java.util.Scanner;
      public static void main(String[]args){
                Scanner input=new Scanner(System.in);
                System.out.print("请输入一个五位正整数: ");
                int i=input.nextInt();
                int j=i%10;//个位
                int k=i/10000;//万位
                if(j==k){
                        int a=(i/1000)%10;
                        int b=(i/10)%10;
                        if(a==b){
                              System.out.println(i+"是回文数");
                        }else{
                              System.out.println(i+"不是回文数");
                        }
                }else{
                        System.out.println(i+"不是回文数");
                }
      }
2、题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,
还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了
一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上
想再吃时,只剩下一个桃子了。求第一天共摘了多少?

      public static void main(String[]args){
                int p=1;
                int sum;
                for(int i=1;i<=9;i++){
                        p=2*(p+1);
                        
                }
                System.out.println("第一天摘了"+p+"个桃子");
      }

3、题目:计算 1! + 2! + 3! + 4! +... + 10!
说明:4! 表示4的阶乘。4的阶乘是:1 * 2 * 3 * 4

      public static void main(String[] args) {
                //计算 1! + 2! + 3! + 4! +... + 10!
                int sum=0;
                for(int i=1;i<=10;i++){
                        int k=1;
                        for(int j=1;j<=i;j++){
                              k*=j;
                        }
                        sum+=k;
                }
                System.out.println(sum);
      }

4、题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半再落下,
求它在第10次落地时,共经过多少米

      public static void main(String[]args){
                //题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半再落下,
                //求它在第10次落地时,共经过多少米
                int sum=100;
                int h=100;
                for(int i=1;i<=9;i++){
                        h=h/2;
                        int s=2*h;
                        sum+=s;
                }
                System.out.println(sum);
      }
5、一个四位数,恰好等于去掉它的首位数字之后所剩的三位数的3倍,这个
四位数是多少?

      public static void main(String[]args){
                for(int num=1000;num<=9999;num++){
                              int a=num/1000;//千位数
                              int b=(num/100)%10;//百
                              int c=(num/10)%10;//十
                              int d=num%10;//个位数
                              int k=3*(100*b+10*c+d);
                              if(k==num){
                                        System.out.println(num);
                              }
                }
      }

Iuppiter 发表于 2021-12-7 20:50

厉害了{:1_921:}坚持就是胜利

落尘大大和你呢 发表于 2022-2-23 20:25

   import java.util.Scanner;
public static void main(String[]args){
      Scanner input = new Scanner(System.in);
      System.out.println("请输入一个五位正整数: ");
      int i=input.nextInt();
      //个位
      int j=i%10;
      //万位
      int k=i/10000;
      int a=(i/1000)%10;
      int b=(i/10)%10;
      if(j == k && a == b){
            System.out.println(i + "是回文数");
      }else{
            System.out.println(i+"不是回文数");
      }
    }
}

Slh233 发表于 2021-12-7 21:03

加油,坚持就是胜利

偶尔平凡 发表于 2021-12-7 21:05

detewhkn 发表于 2021-12-7 22:30

学习一下

啊杰啊 发表于 2021-12-8 08:06

学习一下

ningmengjing123 发表于 2021-12-8 08:18

chengxuyuan01 发表于 2021-12-8 13:28

这属于数据算法了啊,果然厉害

SNNS 发表于 2022-1-3 11:44

chengxuyuan01 发表于 2021-12-8 13:28
这属于数据算法了啊,果然厉害
学,到是,不是很难,难的是在实际中用出来

HelloWang 发表于 2022-1-3 13:07

SNNS 发表于 2022-1-3 11:44
学,到是,不是很难,难的是在实际中用出来

是呀,例子很简单。
页: [1] 2
查看完整版本: Java自学记录Day20