一つだけ指摘するとしたらMODで0だった数値をSOSUという関数内で素数か判定してからプリントしていますが、判定する必要はありません。 何故かというと4で割り切れるというような事は既に2で何回も割っているので起きないはず、6や9で割り切れると言うことも3で割っているので起きないはずという風に割り切れる数値は素数しかでてこないからです。