16/04/11 19:11:43.16 U9aEtrvs.net
>>411 Squeak/Pharo Smalltalk
| primeStartsWith |
primeStartsWith := [:n |
| exp min max ans |
exp := 0.
[ min := n * (10 raisedTo: exp).
max := n+1 * (10 raisedTo: exp).
ans := (Integer primesUpTo: max) detect: [:prime | prime >= min] ifNone: nil.
exp := exp + 1.
ans notNil.
] whileFalse.
ans
].
primeStartsWith value: 4. "=> 41 "
primeStartsWith value: 777. "=> 77711 "
primeStartsWith value: 403. "=> 40343 "