📄 main.html
字号:
}</span><span class="style5">long </span><span class="style11">getb_1</span><span class="style10">(</span><span class="style5">long </span><span class="style11">n_fai</span><span class="style10">,</span><span class="style5">long </span><span class="style11">b</span><span class="style10">)</span><span class="style2">//get b_1</span><span class="style10">{ </span><span class="style5">long </span><span class="style11">a</span><span class="style10">; </span><span class="style5">if</span><span class="style10">((</span><span class="style11">a</span><span class="style10">=</span><span class="style11">MultiplicativeInverse</span><span class="style10">(</span><span class="style11">n_fai</span><span class="style10">, </span><span class="style11">b</span><span class="style10">))==-</span><span class="style4">1</span><span class="style10">) </span><span class="style5">return </span><span class="style10">-</span><span class="style4">1</span><span class="style10">; </span><span class="style5">else return </span><span class="style11">a</span><span class="style10">;}</span><span class="style5">long </span><span class="style11">getb</span><span class="style10">(</span><span class="style5">long </span><span class="style11">n_fai</span><span class="style10">)</span><span class="style2">//get b,return b</span><span class="style10">{ </span><span class="style5">long </span><span class="style11">tempb</span><span class="style10">[</span><span class="style11">MAX_N</span><span class="style10">]; </span><span class="style5">for </span><span class="style10">(</span><span class="style5">long </span><span class="style11">i</span><span class="style10">=</span><span class="style4">0</span><span class="style10">; </span><span class="style11">i</span><span class="style10"><</span><span class="style11">n_fai</span><span class="style10">; </span><span class="style11">i</span><span class="style10">++) </span><span class="style11">tempb</span><span class="style10">[</span><span class="style11">i</span><span class="style10">]=</span><span class="style11">i</span><span class="style10">; </span><span class="style5">return </span><span class="style11">tempb</span><span class="style10">[</span><span class="style11">rand</span><span class="style10">()%</span><span class="style11">n_fai</span><span class="style10">];}</span><span class="style5">long </span><span class="style11">getBigPrime</span><span class="style10">(</span><span class="style5">long </span><span class="style10">*</span><span class="style11">p</span><span class="style10">, </span><span class="style5">long </span><span class="style11">PrimeSize1</span><span class="style10">, </span><span class="style5">long </span><span class="style11">PrimeSize2</span><span class="style10">)</span><span class="style2">//get two Big Prime</span><span class="style10">{ </span><span class="style11">srand</span><span class="style10">((</span><span class="style5">unsigned</span><span class="style10">)</span><span class="style11">time</span><span class="style10">(</span><span class="style11">NULL</span><span class="style10">)); </span><span class="style5">while </span><span class="style10">(</span><span class="style4">1</span><span class="style10">) { </span><span class="style11">again_a</span><span class="style10">: </span><span class="style5">long </span><span class="style11">a </span><span class="style10">= </span><span class="style11">rand</span><span class="style10">()%</span><span class="style11">PrimeSize1</span><span class="style10">+</span><span class="style11">PrimeSize1</span><span class="style10">; </span><span class="style5">if </span><span class="style10">(</span><span class="style11">OddEvenTest</span><span class="style10">(</span><span class="style11">a</span><span class="style10">)==</span><span class="style4">2</span><span class="style10">) </span><span class="style5">goto </span><span class="style11">again_a</span><span class="style10">; </span><span class="style11">cout </span><span class="style10"><<</span><span class="style6">"The Random Number a is : "</span><span class="style10"><<</span><span class="style11">a</span><span class="style10"><<</span><span class="style11">endl</span><span class="style10">; </span><span class="style5">for </span><span class="style10">(</span><span class="style5">long </span><span class="style11">i</span><span class="style10">=</span><span class="style11">PrimeSize1</span><span class="style10">; </span><span class="style11">i</span><span class="style10"><</span><span class="style11">PrimeSize1</span><span class="style10">*</span><span class="style4">2</span><span class="style10">; </span><span class="style11">i</span><span class="style10">++) { </span><span class="style5">if </span><span class="style10">((</span><span class="style11">p</span><span class="style10">[</span><span class="style4">0</span><span class="style10">]=</span><span class="style11">MillerRabin</span><span class="style10">(</span><span class="style11">a</span><span class="style10">)) > </span><span class="style4">0</span><span class="style10">) { </span><span class="style11">cout </span><span class="style10"><< </span><span class="style6">"The Prime p:"</span><span class="style10"><< </span><span class="style11">p</span><span class="style10">[</span><span class="style4">0</span><span class="style10">] <<</span><span class="style11">endl</span><span class="style10">; </span><span class="style5">break</span><span class="style10">; } </span><span class="style5">else </span><span class="style10">{ </span><span class="style11">a</span><span class="style10">=</span><span class="style11">a</span><span class="style10">+</span><span class="style4">2</span><span class="style10">; </span><span class="style11">p</span><span class="style10">[</span><span class="style4">0</span><span class="style10">]=</span><span class="style4">0</span><span class="style10">; } } </span><span class="style5">break</span><span class="style10">; } </span><span class="style5">while </span><span class="style10">(</span><span class="style4">1</span><span class="style10">) { </span><span class="style11">again_b</span><span class="style10">: </span><span class="style5">long </span><span class="style11">b </span><span class="style10">= </span><span class="style11">rand</span><span class="style10">()%</span><span class="style11">PrimeSize2</span><span class="style10">+</span><span class="style11">PrimeSize2</span><span class="style10">; </span><span class="style5">if </span><span class="style10">(</span><span class="style11">OddEvenTest</span><span class="style10">(</span><span class="style11">b</span><span class="style10">)==</span><span class="style4">2</span><span class="style10">) </span><span class="style5">goto </span><span class="style11">again_b</span><span class="style10">; </span><span class="style11">cout </span><span class="style10"><<</span><span class="style6">"The Random Number b is : "</span><span class="style10"><<</span><span class="style11">b</span><span class="style10"><<</span><span class="style11">endl</span><span class="style10">; </span><span class="style5">for </span><span class="style10">(</span><span class="style5">long </span><span class="style11">i</span><span class="style10">=</span><span class="style11">PrimeSize2</span><span class="style10">; </span><span class="style11">i</span><span class="style10"><</span><span class="style11">PrimeSize2</span><span class="style10">*</span><span class="style4">2</span><span class="style10">; </span><span class="style11">i</span><span class="style10">++) { </span><span class="style5">if </span><span class="style10">((</span><span class="style11">p</span><span class="style10">[</span><span class="style4">1</span><span class="style10">]=</span><span class="style11">MillerRabin</span><span class="style10">(</span><span class="style11">b</span><span class="style10">)) > </span><span class="style4">0</span><span class="style10">) { </span><span class="style11">cout </span><span class="style10"><< </span><span class="style6">"The Prime q:"</span><span class="style10"><<</span><span class="style11">p</span><span class="style10">[</span><span class="style4">1</span><span class="style10">] <<</span><span class="style11">endl</span><span class="style10">; </span><span class="style5">break</span><span class="style10">; } </span><span class="style5">else </span><span class="style10">{ </span><span class="style11">b</span><span class="style10">=</span><span class="style11">b</span><span class="style10">+</span><span class="style4">2</span><span class="style10">; </span><span class="style11">p</span><span class="style10">[</span><span class="style4">1</span><span class="style10">]=</span><span class="style4">0</span><span class="style10">; } } </span><span class="style5">break</span><span class="style10">; } </span><span class="style5">if </span><span class="style10">(</span><span class="style11">p</span><span class="style10">[</span><span class="style4">0</span><span class="style10">]></span><span class="style4">0 </span><span class="style10">&& </span><span class="style11">p</span><span class="style10">[</span><span class="style4">1</span><span class="style10">]></span><span class="style4">0</span><span class="style10">) </span><span class="style5">return </span><span class="style4">1</span><span class="style10">; </span><span class="style5">else return </span><span class="style10">-</span><span class="style4">1</span><span class="style10">;}</span></span></code></pre></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -