
给定一个整数类型的值,假设为number。任务是检查给定的数字是否可重构。如果是,打印该数字是可重构数字,否则打印不可能。
什么是可重构数字?
当一个数字可以被其可用因子的总数整除时,它就是可重构的。例如,数字9是可重构的,因为它有3个因子(1、3、9),而9可以被3整除,因此它是一个可重构数字。
让我们看看这个的各种输入输出情况-
输入 - int number = 9
输出 - 这是一个可重构数字
立即学习“C++免费学习笔记(深入)”;
解释 - 当一个数字可以被其可用因子的总数整除时,它就是可重构的。我们给定了一个数字9,它是可重构的,因为它有3个因子(1、3、9)
9 可以被 3 整除,因此它是一个可重构的数字。输入 − int number = 10
输出 − 它不是t a Refactorable number
说明 - 当一个数字可以被可用因子总数整除时,它就是可重构的。我们得到一个数字 10,它是不可重构的,因为它的因子总数为 4(1, 2, 5, 10),并且 10 不能被 4 整除,因此它不是一个可重构的数字
下面程序中使用的方法如下
输入一个整数类型的变量,比如说数字。
SmartB2B行业电子商务下载SmartB2B 是一款基于PHP、MySQL、Smarty的B2B行业电子商务网站管理系统,系统提供了供求模型、企业模型、产品模型、人才招聘模型、资讯模型等模块,适用于想在行业里取得领先地位的企业快速假设B2B网站,可以运行于Linux与Windows等多重服务器环境,安装方便,使用灵活。 系统使用当前流行的PHP语言开发,以MySQL为数据库,采用B/S架构,MVC模式开发。融入了模型化、模板
将数据传递给bool类型的函数check_Refactorable(int number)。
-
函数check_Refactorable(int number)内部
声明一个整型变量,计数为0。
开始循环FOR,从i到1,直到i小于sqrt(数字)。在循环内,检查 IF number % i = 0,然后检查 IF number / i = i,然后将计数预先增加 1。
ELSE,将计数设置为 count + 2 .
返回数字 % count == 0
打印结果。
打印结果。 p>
示例
#includeusing namespace std; bool check_Refactorable(int number){ int count = 0; for (int i = 1; i <= sqrt(number); ++i){ if(number % i==0){ if(number / i == i){ ++count; } else{ count += 2; } } } return number % count == 0; } int main(){ int number = 9; if(check_Refactorable(number) == 1){ cout<<"It is a Refactorable number"; } else{ cout<<"It isn't a Refactorable number"; } return 0; }
输出
如果我们运行上面的代码,它将生成以下输出
It is a Refactorable number










