c语言编程问题

求具有下列两个性质的最小自然数n,(1)n的个位数是6;(2)若将n的个位数移到其余各位数字之前,所得的新数是n的4倍。用Cl语言解题。... 求具有下列两个性质的最小自然数n,(1)n的个位数是6;(2)若将n的个位数移到其余各位数字之前,所得的新数是n的4倍。
用Cl语言解题。
展开
 我来答
百度网友cb907f6562
2013-03-19 · TA获得超过109个赞
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:144万
展开全部
4(10x+6)=6*10^p+x
解得39x=6*10^p-24
使得x最小的正整数解,n=10x+6
编程实现思想:
做p循环for(int p=1;p<101;p++),然后找到判断6*10^p-24是否除39的余数是否为0,为零则用x记录6*10^p-24/39的商,输出n=10x+6。
更多追问追答
追问
我这样写对不对?谢谢啊!(题目打错了,n是个六位数)
int n,m,a;
n=10*a 6;
m=6e5 a;
for(m=10000;m<=99999;m )
if(n/m!==4) break;
cout<<n<<endl;
追答
逻辑上好像感觉怪怪的。你先从数学上推导一下吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-03-19
展开全部
4(10a+6)=6*10^m+a
解得39a=6*10^m-24
即a=2(10^m-4)/13
a的位数为m,n的位数为m+1。(n=10*a+6)
编程如下:
int a;
for(int m=1;;m++)
{
a=2*(pow(10,m)-4);
if(a%13==0)
break;
}
经计算m=5,a=15384,n=153846
更多追问追答
追问
如果已知这是个六位数,怎么编?
数)
int n,m,a;
n=10*a 6;
m=6e5 a;
for(m=10000;m<=99999;m )
if(n/m!==4) break;
cout<<n<<endl;
对不对?
追答
直接另m=5,代入就行了,可以直接算出结果来,就用不着寻找m了,更简单了。我写的是通用的程序。可以找出很多个满足条件的,当然最小的只有一个。
4(10a+6)=6*10^5+a
解得39a=6*10^5-24
即a=2(10^5-4)/13
a的位数为5,n的位数为6。(n=10*a+6)
编程如下:
int a=2*(pow(10,5)-4)/13;
int n=10*a+6;
计算得,a=15384,n=153846
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式