PY
py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
from math import *
def prime(n):
for i in range(2,ceil(sqrt(n))):
if n%i==0:
return False
return True
def square(n):
return (sqrt(n)%1==0)
nums = [1,2,4,5,9,11,16,17]
messages=["Not alternating sequence of primes and squares","Is alternating sequence of primes and squares"]
def scan(nlist,start):
global messages
if len(nlist)<=1:return
mapp = {0:prime,1:square}
for i in range(1,len(nlist)):
start=1-start
if not mapp[start](nlist[i]):
print(messages[0])
break
else:
print(messages[1])
if prime(nums[0]):
scan(nums,1)
elif square(nums[0]):
scan(nums,0)
else:
print(messages[0])
Enter to Rename, Shift+Enter to Preview
OUTPUT
Run