Smarandache-Wellin primes: Difference between revisions
Content added Content deleted
(→{{header|Ruby}}: Add Ruby) |
(Realize in F#) |
||
Line 164: | Line 164: | ||
</pre> |
</pre> |
||
=={{header|F_Sharp|F#}}== |
|||
<syntaxhighlight lang="fsharp"> |
|||
// Smarandache-Wellin primes. Nigel Galloway: April 3rd., 2023 |
|||
let izP(g,_,_,_)=let mutable g=System.Numerics.BigInteger.Parse g |
|||
Open.Numeric.Primes.MillerRabin.IsProbablePrime &g |
|||
let fN g="0123456789"+g|>Seq.countBy id|>Seq.map(fun(_,g)->string(g-1))|>Seq.fold((+))"" |
|||
let sw()=primes32()|>Seq.scan(fun(n,i,g,e)l->let a=string l in (n+a,l,g+1,e+(String.length a)))("",0,0,0)|>Seq.skip 1 |
|||
sw()|>Seq.filter izP|>Seq.take 3|>Seq.iter(fun(i,_,_,_)->printf "%s " i); printfn "" |
|||
sw()|>Seq.filter izP|>Seq.take 7|>Seq.iter(fun(_,n,g,l)->printfn "index %4d: digits %4d last prime %d" g l n); printfn "" |
|||
sw()|>Seq.map(fun(i,g,e,l)->(fN i,g,e,l))|>Seq.filter izP|>Seq.take 20|>Seq.iter(fun(n,_,g,_)->printfn $"index %4d{g}: prime %s{n}") |
|||
</syntaxhighlight> |
|||
{{out}} |
|||
<pre> |
|||
2 23 2357 |
|||
index 1: digits 1 last prime 2 |
|||
index 2: digits 2 last prime 3 |
|||
index 4: digits 4 last prime 7 |
|||
index 128: digits 355 last prime 719 |
|||
index 174: digits 499 last prime 1033 |
|||
index 342: digits 1171 last prime 2297 |
|||
index 435: digits 1543 last prime 3037 |
|||
index 32: prime 4194123321127 |
|||
index 72: prime 547233879626521 |
|||
index 73: prime 547233979727521 |
|||
index 134: prime 13672766322929571043 |
|||
index 225: prime 3916856106393739943689 |
|||
index 303: prime 462696313560586013558131 |
|||
index 309: prime 532727113760586013758133 |
|||
index 363: prime 6430314317473636515467149 |
|||
index 462: prime 8734722823685889120488197 |
|||
index 490: prime 9035923128899919621189209 |
|||
index 495: prime 9036023329699969621389211 |
|||
index 522: prime 9337023533410210710923191219 |
|||
index 538: prime 94374237357103109113243102223 |
|||
index 624: prime 117416265406198131121272110263 |
|||
index 721: prime 141459282456260193137317129313 |
|||
index 738: prime 144466284461264224139325131317 |
|||
index 790: prime 156483290479273277162351153339 |
|||
index 852: prime 164518312512286294233375158359 |
|||
index 1087: prime 208614364610327343341589284471 |
|||
index 1188: prime 229667386663354357356628334581 |
|||
</pre> |
|||
=={{header|Go}}== |
=={{header|Go}}== |
||
{{trans|Wren}} |
{{trans|Wren}} |