题目:求1000以内的双素数
解:
输入“
sushuji = []
”,创建一个列表,收集素数
输入“
for sushu in range(2, 1000): for i in range(2, sushu): if sushu % i == 0: break else: sushuji.append(sushu)
”,第一层循环将“sushu”的范围控制在[2,1000)内,并从2开始往后循环;第二层循环将“i”的范围控制在[2,sushu)内,并从2开始循环,且在每一次循环都除于“sushu”,若余数为0,则“sushu”是“i”的倍数,“sushu”不是素数;不然,“sushu”是素数,则加入列表“sushuji”中。
输入“
for sushu in range(1, len(sushuji)): if sushuji[sushu] - sushuji[sushu - 1] == 2: print("(", sushuji[sushu - 1], ",", sushuji[sushu], ")")
”,for循环将“sushu”的范围控制在[1,列表“sushuji”的个数)内,if条件为使当前列表内的“sushu”减去当前列表内“sushu”的上一项,若差值为2,则两者为双素数;若插值不是2,则继续循环。
结果如下:
整图如下: