CompositeQ[n]
CompositeQ
CompositeQ[n]
詳細とオプション
- CompositeQは,ある整数が合成数かどうかを調べるためによく使われる.
- 合成数は,1以外の2つの整数の積である正の数である.
- n が明白に合成数でなければCompositeQ[n]はFalseを返す.
- CompositeQ[n]は,負の整数 n については事実上CompositeQ[-n]と同じである.
- GaussianIntegers->Trueのとき,CompositeQはある数がガウス整数上で合成数かどうかを判定する.
- CompositeQ[m+In]は自動的にガウス整数上で作用する.
例題
すべて開く すべて閉じる例 (2)
スコープ (4)
CompositeQは整数に使うことができる:
CompositeQ[4]CompositeQ[3 + I]CompositeQ[5, GaussianIntegers -> True]CompositeQ[10 ^ 3000 + 1]CompositeQはリストに縫い込まれる:
CompositeQ[{1, 2, 3, 4, 5, 6}]オプション (1)
アプリケーション (9)
基本的なアプリケーション (3)
Multicolumn[If[CompositeQ[#], Style[#, Red, Bold], #]& /@ Range[100], 10, ...]composite[n_] := FixedPoint[n + PrimePi[#] + 1&, n];Table[composite[n], {n, 100}]AllTrue[%, CompositeQ]randomComposite[n_, m_ : 1] := composite[RandomInteger[{1, n}, m]];randomComposite[100, 10]AllTrue[%, CompositeQ]ArrayPlot[Boole[Table[CompositeQ[a + b I, GaussianIntegers -> True],
{a, 100}, {b, 100}]]]整数論 (6)
が常に合成数であるシェルピンスキー(Sierpiński)数 k を認識する:
k = 78557;
AllTrue[Table[CompositeQ[k * 2 ^ n + 1], {n, 1, 10000}], TrueQ]powQ[n_] := AllTrue[Part[FactorInteger[n], All, 2], # > 1&];powQ[2 ^ 2 * 3 ^ 4]powQ[64]bprimeQ[b_, n_] := PowerMod[b, n - 1, n] == 1 && CompositeQ[n];Select[Range[1000], bprimeQ[2, #]&]Select[Range[1000], bprimeQ[5, #]&]Select[Table[2 ^ 2 ^ n + 1, {n, 10}], CompositeQ]data = Select[Range[100], CompositeQ];𝒟 = EmpiricalDistribution[data];DiscretePlot[Evaluate[CDF[𝒟, x]], {x, 1, 100}, ExtentSize -> Right]data = {Re[#], Im[#]}& /@ Select[Flatten[Table[a + b I, {a, 500}, {b, 500}]], CompositeQ];𝒟 = EmpiricalDistribution[data];DiscretePlot3D[Evaluate[CDF[𝒟, {x, y}]], {x, 1, 5}, {y, 1, 5}, ExtentSize -> Right]特性と関係 (6)
Primesはすべての素数の領域を表す:
Element[8, Primes]Primesに属する合成数はない:
CompositeQ[8]CompositeQ[12]PrimeQ[12]CompositeQはすべての素数に対してFalseを与える:
PrimeQ[67]CompositeQ[67]合成数はMersennePrimeExponentにはなり得ない:
CompositeQ[28]MersennePrimeExponentQ[28]CompositeQ[60]FactorInteger[60]CompositeQ[5 ^ 11]Length[Divisors[5 ^ 11]]おもしろい例題 (2)
ArrayMesh[Boole[Table[CompositeQ[a ^ 2 + b ^ 2 + c ^ 2], {a, 10}, {b, 10}, {c, 10}]]]ulam[n_] := Partition[Permute[Range[n ^ 2], Accumulate[Take[Flatten[{{n ^ 2 + 1} / 2, Table
[(-1) ^ j i, {j, n}, {i, {-1, n}}, {j}]}], n ^ 2]]], n];ArrayPlot[ulam[101]Boole[CompositeQ[ulam[101]]], ColorFunction -> "Rainbow", ColorRules -> {0 -> White}]テクニカルノート
-
▪
- パターン適用範囲の制限 ▪
- 数の型 ▪
- 整数の操作と整数論に関連した関数 ▪
- 内部実装について:数論関数
テキスト
Wolfram Research (2014), CompositeQ, Wolfram言語関数, https://reference.wolfram.com/language/ref/CompositeQ.html.
CMS
Wolfram Language. 2014. "CompositeQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/CompositeQ.html.
APA
Wolfram Language. (2014). CompositeQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CompositeQ.html
BibTeX
@misc{reference.wolfram_2026_compositeq, author="Wolfram Research", title="{CompositeQ}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/CompositeQ.html}", note=[Accessed: 10-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_compositeq, organization={Wolfram Research}, title={CompositeQ}, year={2014}, url={https://reference.wolfram.com/language/ref/CompositeQ.html}, note=[Accessed: 10-September-2026]}