标签:阶乘n!最后非零位
public static int get_last_num(int n){ if (n == 0 || n == 1) { System.out.println(1); return 1; } int tmp = 1; for (int i = n; i > 0; i--) { // 去除右边的0 if (i % 10 == 0) { i = i / 10; while (i % 10 == 0) { i = i / 10; } } // 取它的个位数 tmp = tmp * (i % 10); // 如果相乘后是10的倍数,去除右边的0 if (tmp % 10 == 0) { tmp = tmp / 10; } // 如果相乘后大于10,不是10的倍数,取各位数 if (tmp > 10) { tmp = tmp % 10; } } return tmp; }
本文出自 “递归的梦想偏执狂” 博客,请务必保留此出处http://rubinzhan.blog.51cto.com/11883911/1862462
标签:阶乘n!最后非零位
原文地址:http://rubinzhan.blog.51cto.com/11883911/1862462