summaryrefslogtreecommitdiff
path: root/comp
diff options
context:
space:
mode:
Diffstat (limited to 'comp')
-rw-r--r--comp/lucas-standen-NEA/code2/appendsnprintf.obin0 -> 2480 bytes
-rw-r--r--comp/lucas-standen-NEA/code2/comp.obin0 -> 15008 bytes
-rw-r--r--comp/lucas-standen-NEA/code2/examples/tmp.zpy.c5
-rw-r--r--comp/lucas-standen-NEA/code2/fileread.obin0 -> 1992 bytes
-rw-r--r--comp/lucas-standen-NEA/code2/stdlib/String/String.obin0 -> 6288 bytes
-rw-r--r--comp/lucas-standen-NEA/code2/stdlib/zpylib.obin0 -> 3312 bytes
-rw-r--r--comp/lucas-standen-NEA/code2/tokenizer.obin0 -> 2064 bytes
-rw-r--r--comp/lucas-standen-NEA/code2/util.obin0 -> 1608 bytes
-rwxr-xr-xcomp/lucas-standen-NEA/code2/zpybin0 -> 24712 bytes
-rw-r--r--comp/lucas-standen-NEA/code2/zpy.obin0 -> 5016 bytes
-rw-r--r--comp/skeleton/__pycache__/code.cpython-313.pycbin0 -> 9836 bytes
-rw-r--r--comp/skeleton/skel.py (renamed from comp/skeleton/code.py)23
-rw-r--r--comp/work/48/starter3
-rw-r--r--comp/work/49/examq7
-rw-r--r--comp/work/49/sheet7
15 files changed, 39 insertions, 6 deletions
diff --git a/comp/lucas-standen-NEA/code2/appendsnprintf.o b/comp/lucas-standen-NEA/code2/appendsnprintf.o
new file mode 100644
index 0000000..5944591
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/appendsnprintf.o
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/comp.o b/comp/lucas-standen-NEA/code2/comp.o
new file mode 100644
index 0000000..8c8ed6c
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/comp.o
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/examples/tmp.zpy.c b/comp/lucas-standen-NEA/code2/examples/tmp.zpy.c
new file mode 100644
index 0000000..6a5c51e
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/examples/tmp.zpy.c
@@ -0,0 +1,5 @@
+#include <zpylib.h>
+èz7üb~MUp();
+Ð}7üb¸}7übstring* str = Ð}7übString("hello_world");
+ }7übprintstr(str->_str);
+˜|7übprintchar('\n');
diff --git a/comp/lucas-standen-NEA/code2/fileread.o b/comp/lucas-standen-NEA/code2/fileread.o
new file mode 100644
index 0000000..7e4345d
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/fileread.o
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/stdlib/String/String.o b/comp/lucas-standen-NEA/code2/stdlib/String/String.o
new file mode 100644
index 0000000..aa70cc9
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/stdlib/String/String.o
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/stdlib/zpylib.o b/comp/lucas-standen-NEA/code2/stdlib/zpylib.o
new file mode 100644
index 0000000..910797f
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/stdlib/zpylib.o
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/tokenizer.o b/comp/lucas-standen-NEA/code2/tokenizer.o
new file mode 100644
index 0000000..8b45a46
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/tokenizer.o
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/util.o b/comp/lucas-standen-NEA/code2/util.o
new file mode 100644
index 0000000..62e23ff
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/util.o
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/zpy b/comp/lucas-standen-NEA/code2/zpy
new file mode 100755
index 0000000..6fb253e
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/zpy
Binary files differ
diff --git a/comp/lucas-standen-NEA/code2/zpy.o b/comp/lucas-standen-NEA/code2/zpy.o
new file mode 100644
index 0000000..2f42f5e
--- /dev/null
+++ b/comp/lucas-standen-NEA/code2/zpy.o
Binary files differ
diff --git a/comp/skeleton/__pycache__/code.cpython-313.pyc b/comp/skeleton/__pycache__/code.cpython-313.pyc
new file mode 100644
index 0000000..9adf17d
--- /dev/null
+++ b/comp/skeleton/__pycache__/code.cpython-313.pyc
Binary files differ
diff --git a/comp/skeleton/code.py b/comp/skeleton/skel.py
index 495913f..762a96f 100644
--- a/comp/skeleton/code.py
+++ b/comp/skeleton/skel.py
@@ -34,7 +34,9 @@ def PlayGame(Targets, NumbersAllowed, TrainingGame, MaxTarget, MaxNumber):
GameOver = False
while not GameOver:
DisplayState(Targets, NumbersAllowed, Score)
- UserInput = input("Enter an expression: ")
+ UserInput = input("Enter an expression: ").replace(' ', '')
+ if (UserInput == "QUIT"):
+ break
print()
if CheckIfUserInputValid(UserInput):
UserInputInRPN = ConvertToRPN(UserInput)
@@ -43,7 +45,11 @@ def PlayGame(Targets, NumbersAllowed, TrainingGame, MaxTarget, MaxNumber):
if IsTarget:
NumbersAllowed = RemoveNumbersUsed(UserInput, MaxNumber, NumbersAllowed)
NumbersAllowed = FillNumbers(NumbersAllowed, TrainingGame, MaxNumber)
+ else:
+ print("user input invalid!")
Score -= 1
+ if Score < 0:
+ GameOver = True
if Targets[0] != -1:
GameOver = True
else:
@@ -55,9 +61,9 @@ def CheckIfUserInputEvaluationIsATarget(Targets, UserInputInRPN, Score):
UserInputEvaluation = EvaluateRPN(UserInputInRPN)
UserInputEvaluationIsATarget = False
if UserInputEvaluation != -1:
+ Score += 2
for Count in range(0, len(Targets)):
if Targets[Count] == UserInputEvaluation:
- Score += 2
Targets[Count] = -1
UserInputEvaluationIsATarget = True
return UserInputEvaluationIsATarget, Score
@@ -90,6 +96,9 @@ def CheckNumbersUsedAreAllInNumbersAllowed(NumbersAllowed, UserInputInRPN, MaxNu
Temp.remove(int(Item))
else:
return False
+ else:
+ if Item.isdigit() == True:
+ return False
return True
def CheckValidNumber(Item, MaxNumber):
@@ -129,7 +138,7 @@ def DisplayTargets(Targets):
def ConvertToRPN(UserInput):
Position = 0
- Precedence = {"+": 2, "-": 2, "*": 4, "/": 4}
+ Precedence = {"+": 2, "-": 2, "*": 4, "/": 4, "^": 6}
Operators = []
Operand, Position = GetNumberFromUserInput(UserInput, Position)
UserInputInRPN = []
@@ -156,7 +165,7 @@ def ConvertToRPN(UserInput):
def EvaluateRPN(UserInputInRPN):
S = []
while len(UserInputInRPN) > 0:
- while UserInputInRPN[0] not in ["+", "-", "*", "/"]:
+ while UserInputInRPN[0] not in ["+", "-", "*", "/", "^"]:
S.append(UserInputInRPN[0])
UserInputInRPN.pop(0)
Num2 = float(S[-1])
@@ -172,6 +181,8 @@ def EvaluateRPN(UserInputInRPN):
Result = Num1 * Num2
elif UserInputInRPN[0] == "/":
Result = Num1 / Num2
+ elif UserInputInRPN[0] == "^":
+ Result = Num1 ** Num2
UserInputInRPN.pop(0)
S.append(str(Result))
if float(S[0]) - math.floor(float(S[0])) == 0.0:
@@ -182,7 +193,7 @@ def EvaluateRPN(UserInputInRPN):
def GetNumberFromUserInput(UserInput, Position):
Number = ""
MoreDigits = True
- while MoreDigits:
+ while MoreDigits:
if not(re.search("[0-9]", str(UserInput[Position])) is None):
Number += UserInput[Position]
else:
@@ -196,7 +207,7 @@ def GetNumberFromUserInput(UserInput, Position):
return int(Number), Position
def CheckIfUserInputValid(UserInput):
- if re.search("^([0-9]+[\\+\\-\\*\\/])+[0-9]+$", UserInput) is not None:
+ if re.search("^([0-9]+[\\+\\-\\*\\/\\^])+[0-9]+$", UserInput) is not None:
return True
else:
return False
diff --git a/comp/work/48/starter b/comp/work/48/starter
new file mode 100644
index 0000000..5e9d4d8
--- /dev/null
+++ b/comp/work/48/starter
@@ -0,0 +1,3 @@
+192.168.0.1
+192.168.0.42
+192.168.2.3
diff --git a/comp/work/49/examq b/comp/work/49/examq
new file mode 100644
index 0000000..76068ef
--- /dev/null
+++ b/comp/work/49/examq
@@ -0,0 +1,7 @@
+2.1) 36
+2.2) 7111
+2.3) they are not high or low, they can be any value in a range, thus it is not digital, the pixel values can be digital, as they are a single representable value, which can be written in binary.
+2.4)i) 20
+2.4)ii) 26
+2.5) it is not worth it, as it makes the file larger
+
diff --git a/comp/work/49/sheet b/comp/work/49/sheet
new file mode 100644
index 0000000..62a77c6
--- /dev/null
+++ b/comp/work/49/sheet
@@ -0,0 +1,7 @@
+1.1)1) yes
+1.1)2) no
+1.1)3) yes
+
+1.2) <natural> ::= <digit>|<number><digit>
+
+2.3)