aboutsummaryrefslogtreecommitdiff
path: root/entries/funemy/symbolic/phib.py
diff options
context:
space:
mode:
authorLily Lin2022-10-26 23:30:06 +0000
committerLily Lin2022-10-26 23:30:06 +0000
commitaf03b3cd051a8a8b1442147136156f271f07ac5c (patch)
tree6239bbd269f8c682fcd2bd1aecd29cc8b2edf6b5 /entries/funemy/symbolic/phib.py
parent66fdac7a5ab7040a29fdd6a49cb0123db5ea916a (diff)
parent18d17f9fb578df5f20e689481ed06f44fcf4b80c (diff)
Merge branch 'main' into lily
Diffstat (limited to 'entries/funemy/symbolic/phib.py')
-rw-r--r--entries/funemy/symbolic/phib.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/entries/funemy/symbolic/phib.py b/entries/funemy/symbolic/phib.py
new file mode 100644
index 0000000..c6fb23e
--- /dev/null
+++ b/entries/funemy/symbolic/phib.py
@@ -0,0 +1,21 @@
+from typing import List
+
+def phib(xs: List[int]) -> bool:
+ """
+ Instructions:
+ 1. `pip install crosshair-tool`
+ 2. modify the precondition `pre` to control the length of your fib sequence
+ 3. run `crosshair check phib.py` in your terminal
+
+ pre: len(xs) >= 10
+ post: __return__ != True
+ """
+ if xs[0] != 0:
+ return False
+ if len(xs) > 1:
+ if xs[1] != 1:
+ return False
+ for i in range(2,len(xs)):
+ if xs[i] != xs[i-1] + xs[i-2]:
+ return False
+ return True