搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 分数拆分看不懂
标题:
分数拆分看不懂
只看楼主
ghh123
等 级:
新手上路
帖 子:7
专家分:0
注 册:2014-11-17
结帖率:
100%
楼主
已结贴
√
问题点数:20 回复次数:3
分数拆分看不懂
#include <stdio.h>
int main()
{
int k,x,y;
scanf("%d",&k);
for(y=k+1;y<=2*k;y++)
{
if(k*y%(y-k)==0)
{
x=k*y/(y-k);
printf("1/%d=1/%d+1/%d\n",k,x,y);
}
}
return 0;
}
看不懂原理思路
搜索更多相关主题的帖子:
include
2014-11-17 17:27
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
2
楼
得分:20
设
1/k = 1/x + 1/y
则
1/x = 1/k - 1/y = (y-k) / (k*y)
即
x = (k*y)/(y-k)
所以
只要k*y能被y-k整除,就存在整数的x。
重剑无锋,大巧不工
2014-11-17 19:18
beyondyf
等 级:
贵宾
威 望:
103
帖 子:3282
专家分:12654
注 册:2008-1-21
第
3
楼
得分:0
再补充一句,当一个分拆分成两个数的和时,这两个数中至少有一个是大于等于原数的1/2的(否则它们的和就小于原数了),另一个数也必然是小于等于原数的1/2的(否则它们的和就大于原数了)。所以它的循环是从k+1到2k。
重剑无锋,大巧不工
2014-11-17 19:26
ghh123
等 级:
新手上路
帖 子:7
专家分:0
注 册:2014-11-17
第
4
楼
得分:0
谢谢了,刚看到
2014-11-18 13:23
4
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-438714-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.833832 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved