prime.st

来自「四皇后问题」· ST 代码 · 共 26 行

ST
26
字号
Class Main
[
	main	| x gen |
		gen <- Primes new.
		(smalltalk time: [ x <- gen first.
		[x < 300]
			whileTrue: [ x print. x <- gen next] ] ) print.
]
Class Primes
| lastPrime |
[
	first
		^ lastPrime <- 2
|
	next
		[lastPrime <- lastPrime + 1.
		 self testNumber: lastPrime]
			whileFalse.
		^ lastPrime
|
	testNumber: n
		(Primes new) do: [:x | 
			(x squared > n) ifTrue: [ ^ true ].
			(n \\ x = 0) ifTrue: [ ^ false ] ]
]

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?