for i ← 2 to N: # 列出 2 以上的整數,並初始化為 1 P[i] ← 1 for j ← 4, 6, 8, ... N-1: # 將 2 的倍數設為 0 (也就是刪除 2 的倍數) P[j] ← 0 for i ← 3, 5, 7, ... sqrt(N): # 繼續找出奇數 i,並篩掉所有 i 的倍數,直到 N 的平方根為止 if P[i] = 0: # 若是 P[i] = 0,表示我們之前已經篩過了,這裡直接從 i 的倍數開始篩,以提升執行速度 continue for j ← i*2, i*3, ..., N-1: # 保留奇數 (3、5、7、...),接著將奇數的倍數 (3 的倍數、5 的倍數、7 的倍數...) 填入 0,直到 N-1 P[j] ← 0