Java算法基础(一)

Java算法基础(一)题目总览1.计算10的阶乘2.显示从100到1000以内的水仙花数3.有一段楼梯,每次走5阶,最后剩4阶;每次走4阶,最后剩3阶;每次走3阶,最后剩2阶,每次走7阶,刚刚好。求这段楼梯最少有多少阶。4.求1 - 100以内的所有质数(嵌套循环)5.从键盘上输入两个大于0的数,求两个数的最大公约数和最小公倍数。6.已知:1900年的1月1日是星期一,从键盘上输入年月,从控制台打印月历。闰年的条件:if(year % 400 == 0 || (year % 4 == 0
摘要由CSDN通过智能技术生成

Java算法基础(一)

题目总览
1.计算10的阶乘
2.显示从100到1000以内的水仙花数
3.有一段楼梯,每次走5阶,最后剩4阶;每次走4阶,最后剩3阶;每次走3阶,最后剩2阶,每次走7阶,刚刚好。
求这段楼梯最少有多少阶。
4.求1 - 100以内的所有质数(嵌套循环)
5.从键盘上输入两个大于0的数,求两个数的最大公约数和最小公倍数。
6.已知:1900年的1月1日是星期一,从键盘上输入年月,从控制台打印月历。闰年的条件:
if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))

题目详解

  1. 计算10的阶乘。

思路分析:

  • 首先,了解阶乘的计算方法,是当前字数与(当前数字-1)相乘得出来的。
  • 本算法采用动态规划的思路与递归的方法。
  • n! = n * (n - 1) !

代码如下:


            int s = 1;
            for (int i = 1;i <= 10;i++)
            {
   
                s *= i;
             }
             System.out.println(s);
             }
  1. 显示从100到1000以内的水仙花数

思路分析:

  • 水仙花数的定义:指一个数字,其各位数字立方和等于该数本身。例如:bai153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
  • 解题的关键是,将这个数字的各个位数上的数字表示出来
  • List item
    代码如下:
           int a;
           int b;
           int c;
           for(int i = 100;i < 1000;i++)
           {
   
              a = i / 100;//计算百位
              b = (i / 10) % 10;//计算十位
              c = i % 10;//计算各位
              if((a*a*a+b*b*b+c*c*c) == i)
               System.out.println(i);
            }
  1. 有一段楼梯,每次走5阶,最后剩4阶;每次走4阶,最后剩3阶;每次走3阶,最后剩2阶,每次走7阶,刚刚好。
    求这段楼梯最少有多少阶。

思路分析:

  • 这段楼梯的阶数对5取余,结果为4。
  • 这段楼梯的阶数对4取余,结果为3。
  • 这段楼梯的阶数对3取余,结果为2。
  • 这段楼梯的阶数对7取余,结果为0。
  • 这段楼梯的阶数要同时满足以上条件,使用与逻辑表达式。
    代码如下:
for(int i = 1;i <= 1000;i++)
        {
   
            if
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值