Python编程案例找出自然数n的所

阿萌需要编写一个找出自然数n所有因数程序,帮助学生掌握因数概念。

阿萌要编写找出自然数n所有因数的程序,需要先了解什么是因数?

如果把12写成两个数相乘的形式,有多少种写法呢?

从上图可以看出,12可以表示成12和1相乘,也可以表示成3和4相乘,也可以表示成2和6相乘。

12、1、3、4、2、6这些乘数都是12的因数。再仔细观察,还能发现一个规律,就是12都能被它的因数整除。

如果要找出18的因数有哪些数,用什么方法找呢?

可以将18写成两个数相乘的形式,把两个数相乘都等于18的所有算式都列出来,每个算式的乘数不能相同。最后列出的所有乘数就是18的因数。

使用这种方法虽然可以找出一个数的所有因数,但这种方法需要列出所有两个数相乘等于这个数的算式,没有规律可循,也不适合于让计算机使用这种方法来找一个数的所有因数。

前面我们已经知道了一个数能被这个数所有的因数整除。如果我们从自然数1开始去除这个数,然后顺序用2、3,、……去除这个数,一直到这个数为止,如果这个数能被整除,则除数就是这个数的因数。

用上面的方法找18的因数就比较容易找了,首先用1除18结果是18,18能够被1整除,1是18的因数。然后再用2除18结果是9,18能被2整除,2也是18的因数。继续用3除18结果是6,18能被3整除,3也是18的因数。以此类推,一直到18除18结果是1,18能被18整除,18也是18的因数。

购买专栏解锁剩余80%


转载请注明:http://www.aierlanlan.com/rzdk/4676.html

  • 上一篇文章:
  •   
  • 下一篇文章: 没有了