获得算法

时间:2013-12-03 14:00:39

标签: c++

假设我有一个变量 a b 。现在我想找到 c 的值,使得 a / c 的分数是一个正整数,其中 c 尽可能接近 b

例如: a = 100且 b = 30。 在这种情况下,我希望 c 为25;因为 a / c 是一个整数,而 c b 一样接近。 p>

我有什么想法可以用C ++编写一个函数来完成这个吗?

2 个答案:

答案 0 :(得分:1)

  1. 找出一个因素。 (搜索网络方法)
  2. 扫描结果列表以获得最小差异与b。

答案 1 :(得分:1)

这是家庭作业吗?无论哪种方式,考虑如何在不编写任何代码的情况下解决此问题。一个好的算法来自一个好的设计。将问题分解成碎片,然后再介绍一些例子。例如,您如何解决确定除法是否产生整数值的问题?提示:您可以使用不同的运算符而不是除法来实现此目的。现在,您将如何解决在算法中确定 c 的起始编号的问题?在你想出伪代码之前不要写任何代码。