プログラミングのお題スレ Part6©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0671デフォルトの名無しさん
2015/03/09(月) 13:20:22.83ID:EbdUqU5/| N M epsilon e x max |
N := 10000.
M := 3.
epsilon := 10 raisedTo: N negated.
e := 2 asScaledDecimal: N.
x := 1.
[ | delta | e := e + (delta := 1 / (x := x + 1) factorial). delta < epsilon] whileFalse.
e := e printString.
e := e copyFrom: 3 to: e size - 1 - N printString size.
max := 0.
($0 to: $9) asDigitsToPower: M do: [:digits |
| loc |
loc := e indexOfSubCollection: digits.
loc = 0 ifTrue: [^'not found ', (digits as: String), '. try larger N'].
loc > max ifTrue: [max := loc]
].
^max "=> 8089 "
■ このスレッドは過去ログ倉庫に格納されています