首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
打开考生文件夹下的解决方案文件proj3,其中声明了MagieNumber类,该类是一个用于表示连续正整数序列的类。MagicNumber的成员函数Intimacy的功能是查找该序列中的亲密数对。亲密数对的定义是:如果整数a的所有正因子(包括l,但不包括a
打开考生文件夹下的解决方案文件proj3,其中声明了MagieNumber类,该类是一个用于表示连续正整数序列的类。MagicNumber的成员函数Intimacy的功能是查找该序列中的亲密数对。亲密数对的定义是:如果整数a的所有正因子(包括l,但不包括a
admin
2020-12-21
39
问题
打开考生文件夹下的解决方案文件proj3,其中声明了MagieNumber类,该类是一个用于表示连续正整数序列的类。MagicNumber的成员函数Intimacy的功能是查找该序列中的亲密数对。亲密数对的定义是:如果整数a的所有正因子(包括l,但不包括a自身)之和等于b,并且整数b的所有正因子(包括1,但不包括b自身)之和等于a,则称整数a和b为亲密数对。
请根据亲密数的定义编写成员函数Intimacy。在main函数中给出了一组测试数据,此时程序的输出应该是:
1和1000之间的亲密数对为:
220和284
注意:只需在函数Filter的//*******333*******和//*******666*******之间填入若干语句,不要改动程序中的其他内容。
//MagicNumber.h
#include
#include
#inelude
#pragma warning(disable:4996)
using namespace std;
class MagicNumber
{
public:
MngicNumber(int x1,int x2):min(x1).max(x2),count(0){}
void ResetCount(){count=0;}
int GetCount()const{return count;}
int GetSet(int index){return set[index];}
void Intimacy();//寻找亲密数对
void Print()
{
cout<<rain<<“和”<<max<<"之间的亲密数为:<<endl;
for(int i=0;i<count;i+=2)
cout<<set
<<和<<set[i+1]<<endl;
}
private:
int digits;//Magic数的位数
int min,max;//待计算的数值范围
int count;//Magic数的数量
int set[40];//Magic数集合
};
void writeToFile(const char*):
//main.cpp
#include”MagicNumber.h”
void MagicNumber::Intimacy()
{
int number;
for(number=min;number<max;number++)
{
//******333******
//*****666*****
}
}
}
int main()
}
MagicNumber obj(1,1000);
obj.Intimacy();
obj.Print();
writeToFile(““);
return 0;
}
选项
答案
vojd MagieNumber::Intimacv() for(number=rain:number<max:number++) int i; //过滤已经处理过的亲密数对 bool exist=false; if(number==set[i]){ exit=ture; } if(exist) continue; int numberA=number; int nurnberB=0; int sumA=0,sumB=0: //求numherA的所有正因子之和sumA for(i=1;i<=numberA/2;i++)} |f(numberA%i==0)} sumA+=i; } } //判断sumA的合法性 if(sumA<min‖sumA>max‖sumA==mumber(A){ continue; } //让numberB等于sumA求numberB的所有正因子之和sumB numberB=sumA; for(i=1;i<=numberB/2;j++)} if(numberB%i==0){ sumB+=i: } } //判断numberA和numberB是否属于亲密数对若是存入set数组更新count if(sumB==number(A){ set[count++]=numberA; set[count++]=numberB; } }
解析
根据题意.Intimacy是求min和max之间的亲密数对,程序首先遍历min和max之间的所有整数,在遍历的过程中,判断当前的numberA是否处理过,如果处理过继续判断下一个数;然后求numberA的正因子之和sumA,如果sumA不在min和max之间,或sumA等于numberA,说明当前sumA不合法,继续处理下一个数:否则sumA赋给numberB,求numberB的正因子之和sumB,最后判断sumB是否与numberA相等,如果相等,说明numberA和numberB属于亲密数对,存入set数组并更新count。
转载请注明原文地址:https://kaotiyun.com/show/LOyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
软件工程的出现是由于
生成派生类对象时,派生类构造函数调用基类构造函数的条件是()。A)无需任何条件B)基类中显示定义了构造函数C)派生类中显式定义了构造函数D)派生类构造函数明确调用了基类构造函数
下列是模板声明的开始部分,其中正确的是
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。(1)完成类TestClass1的成员函数seta定义,定义seta对象x为int类型,请在注释//********1****
设有课程关系模式如下:R(C#,Cn,T,TA)(其中C#为课程号,Cn为课程名,T为教师名,Ta为教师地址)并且假定不同课程号可以有相同的课程名,每个课程号下只有一位任课教师,但每位教师可以有多门课程。该关系模式可进一步规范化为
设有课程关系模式:R(C#,Cn,T,TA)(其中,C#为课程号,Cn为课程名,T为教师名,Ta为教师地址)并且假定不同课程号可以有相同的课程名,每个课程号下只有一位任课教师,但每位教师可以有多门课程。关系R中对主属性的传递依赖为
下面不属于软件需求规格说明书内容的是
下列有关模板的叙述中,正确的是()。
线性表的长度为n。在最坏情况下,比较次数为n一1的算法是
下列字符串中可以用作C++标识符的是()。
随机试题
在空调运行期间,在保证卫生条件基础上哪种新风量调节措施不当?[2004年第90题]
我曾经有一个坏习惯:不是在晚饭后坐在沙发上看手机,就是睡觉前躺在床上看手机——打开微信,将当天的朋友圈从头看到尾,一直刷到没有新动态为止;打开微博,看看谁因为什么又上了热搜榜;打开头条,看看它推送给我的星座分析……结果可想而知,时间轻松被刷没,除了一堆无用
向用油酸钠为乳化剂制备的O/W型乳剂中,加入大量氯化钙后,乳剂可出现
患者,男性,27岁,劳累时心悸,胸骨后疼痛1年。查体可闻及主动脉瓣区收缩期粗糙的喷射性杂音,主动脉瓣区第二心音减弱。X线检查示:左室扩大和升主动脉扩张。可能的诊断是
案情:甲与乙签订房屋租赁合同,乙为承租人,租期4年,甲每年向乙收取租金3万元。合同成立后,乙未经甲允许将房屋进行一翻装修,共计花费1万元。1年后乙未经甲同意擅自将房屋转租给丙,租金4万元。此后半年甲得知后找到乙问明情况后便不再过问。第2年,乙因经济状况拖欠
凭证录入的辅助功能包括了()。
“我们探索教育目的时,并不是要到教育过程以外去寻找一个目的,使教育服从这个目的。”这句话反映的观点是()。
Haveyoueverbeenannoyedwithyourselfwhenyou【C1】______somethingimportant?Maybeyouthinkyouhaveabadmemory.Doyoukn
当一只鱼鹰捕捉到一条白鲢、一条草鱼或一条鲤鱼而飞离水面时,往往会有许多鱼鹰几乎同时跟着飞聚到这一水面捕食。但是,当一只鱼鹰捕捉到的是一条鲶鱼时,这种情况却很少出现。以下哪项如果正确,最能合理地解释上述现象?
LivingAloneIsJoyfulMoreandmoreAmericansarelivingalone.Somelivealonebecauseofdivorceorthedeathofapartne
最新回复
(
0
)