Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 查找2个或多个以给定数字作为GCF的数字_C#_Java_Algorithm_Greatest Common Divisor - Fatal编程技术网

C# 查找2个或多个以给定数字作为GCF的数字

C# 查找2个或多个以给定数字作为GCF的数字,c#,java,algorithm,greatest-common-divisor,C#,Java,Algorithm,Greatest Common Divisor,我不想找到给定数字的GCF。我用欧几里德公式。我想生成一系列具有给定GCF的数字。例如,如果我选择4,我应该得到100、72或4、8等 如果输入为4,则需要一个最大公因数为4的数字列表。您可以通过使4成为整个系列中的唯一因素来确保这一点。因此,将数字(4)乘以所有素数以确保 基本列表=3,5,7,11,13,17 gcf清单为4->(3*4)12,(4*5)20,(4*7)28,(4*11)44,(4*13)52,(4*17)68 这将为您提供一个列表,使任意两个数字的GCF为4如果输入为4,则

我不想找到给定数字的GCF。我用欧几里德公式。我想生成一系列具有给定GCF的数字。例如,如果我选择4,我应该得到100、72或4、8等


如果输入为4,则需要一个最大公因数为4的数字列表。您可以通过使4成为整个系列中的唯一因素来确保这一点。因此,将数字(4)乘以所有素数以确保

基本列表=3,5,7,11,13,17

gcf清单为4->(3*4)12,(4*5)20,(4*7)28,(4*11)44,(4*13)52,(4*17)68


这将为您提供一个列表,使任意两个数字的GCF为4

如果输入为4,则需要一个最大公因数为4的数字列表。您可以通过使4成为整个系列中的唯一因素来确保这一点。因此,将数字(4)乘以所有素数以确保

基本列表=3,5,7,11,13,17

gcf清单为4->(3*4)12,(4*5)20,(4*7)28,(4*11)44,(4*13)52,(4*17)68


这将为您提供一个列表,使任意两个数字的GCF为4

一系列具有
N
的数字对,如同GCF是
{N,N},{N,2N},{N,3N},


事实上,任何由
N
N
的一个或多个倍数组成的集合都有
N
作为其GCF。

一系列以
N
作为GCF的数对是
{N,N},{N,2N},{N,3N},


事实上,任何由
N
N
的一个或多个倍数组成的集合都有
N
作为其GCF。

1。也许这个问题可以在

2.只需将不属于GCD因素的数字相乘,即可构造出您感兴趣的数字。对于给定GCD=4的示例,这意味着 $k_1=4$GCD本身 $k_2=4*2$,因为4不除以2 $k_3=4*3$,因为4不除以3 $not k_4=4*4$,因为4除以4
$k_4=4*5$,因为4不除以5等。

1.也许这个问题可以在

2.只需将不属于GCD因素的数字相乘,即可构造出您感兴趣的数字。对于给定GCD=4的示例,这意味着 $k_1=4$GCD本身 $k_2=4*2$,因为4不除以2 $k_3=4*3$,因为4不除以3 $not k_4=4*4$,因为4除以4
$k_4=4*5$,因为4不除5等。

选择一组成对独立的数字(即集合中每xy的gcd(x,y)=1)。将每个数字乘以目标GCD。

选择一组成对独立的数字(即GCD(x,y)=1表示集合中的每个xy)。将每个数字乘以你的目标GCD。

我意识到这是一个老问题,但我将提供我自己的答案,并解释我是如何做到这一点的。首先,让我们打电话给GCF n

起初,我会建议做一些事情,比如挑选随机整数,然后将它们分别乘以n,得到一组数字,这当然会给出可以被n整除的数字,但不一定是GCF为n的数字。如果所有整数都有一个除“1”之外的GCF,那么结果集的GCF实际上是该数字的n倍,而不是n。也就是说,将n乘以一组整数似乎是确保集合中的每个数字至少可被n整除的最佳方法

一种选择是将其中一个数字设为1,但这将减少集合的随机性,因为n始终位于结果集合中

下一步,你可以使用一些素数并将它们乘以n,但这也会减少随机性,因为可能的数字会更少,而且这些数字实际上不需要素数,只需要共同素数(对于整个集合,GCF=1)

您还可以选择一组数字,其中每对数字都是协素数,但同样,整个集合需要是协素数,而不是成对的协素数(对于较大的集合,这将非常需要处理器)


因此,如果你选择的是相当随机的数字,我会首先确定你想要在这个集合中有多少个数字(无论是随机确定的还是预先确定的),然后生成一个比这个数字小的完全“随机”的数字。然后,我会计算这些数字的公共素数因子,然后选择一个没有这些素数因子的随机数。仅仅确保其不具有相同的GCF是不够的,因为GCF可能具有最终数量的公共因子。它只需要集合中的一个数与集合中的其他数没有任何相同的素数因子,就可以使该集合的GCF为“1”。然后,我会把这组数字乘以n,得到你想要的数字集。

我意识到这是一个老问题,但我将提供我自己的答案,并解释我是如何做到这一点的。首先,让我们打电话给GCF n

起初,我会建议做一些事情,比如挑选随机整数,然后将它们分别乘以n,得到一组数字,这当然会给出可以被n整除的数字,但不一定是GCF为n的数字。如果所有整数都有一个除“1”之外的GCF,那么结果集的GCF实际上是该数字的n倍,而不是n。也就是说,将n乘以一组整数似乎是确保集合中的每个数字至少可被n整除的最佳方法

一种选择是将其中一个数字设为1,但这将减少集合的随机性,因为n始终位于结果集合中

下一步,你可以使用一些素数并将它们乘以n,但这也会减少随机性,因为可能的数字会更少,而且这些数字实际上不需要素数,只需要共同素数(对于整个集合,GCF=1)

您还可以选择一组数字,其中每对数字都是共素数,但同样,整个数字集需要是共素数