diff --git a/TaskE00/run.py b/TaskE00/run.py new file mode 100644 index 0000000..4b0ec6c --- /dev/null +++ b/TaskE00/run.py @@ -0,0 +1,41 @@ +import re + +FILE_NAME = "test" + +MODE = "test" + + +def is_correct(line: str): + looking_pattern = re.compile(r"^-?(0|[1-9]\d*[05])$") + + if re.search(looking_pattern, line): + return "yes" + else: + return "no" + + +if MODE == "test": + with open(FILE_NAME + ".in", "r", newline="", encoding="utf8") as file: + text = [line.rstrip() for line in file.readlines()] + + with open(FILE_NAME + ".exp", "r", newline="", encoding="utf8") as file: + expected = [line.rstrip() for line in file.readlines()] + + out: list[str] = [] + for line in text: + out.append(is_correct(line)) + + for ind, found in enumerate(out): + if found == expected[ind]: + print(found) + else: + print("ERROR") + +elif MODE == "input": + line = input("Enter a line: ") + + # Check if the line is an acronym and print 'yes' or 'no' + if is_correct(line) == "yes": + print("yes") + else: + print("no") diff --git a/TaskE01/run.py b/TaskE01/run.py new file mode 100644 index 0000000..df56b27 --- /dev/null +++ b/TaskE01/run.py @@ -0,0 +1,41 @@ +import re + +FILE_NAME = "test" + +MODE = "test" + + +def is_correct(line: str): + looking_pattern = re.compile(r"^\d*(00|25|50|75)$") + + if re.search(looking_pattern, line): + return "yes" + else: + return "no" + + +if MODE == "test": + with open(FILE_NAME + ".in", "r", newline="", encoding="utf8") as file: + text = [line.rstrip() for line in file.readlines()] + + with open(FILE_NAME + ".exp", "r", newline="", encoding="utf8") as file: + expected = [line.rstrip() for line in file.readlines()] + + out: list[str] = [] + for line in text: + out.append(is_correct(line)) + + for ind, found in enumerate(out): + if found == expected[ind]: + print(found) + else: + print(f"ERROR: expected - {expected[ind]}, found - {found}") + +elif MODE == "input": + line = input("Enter a line: ") + + # Check if the line is an acronym and print 'yes' or 'no' + if is_correct(line) == "yes": + print("yes") + else: + print("no") diff --git a/TaskE03/description.txt b/TaskE03/description.txt index 411be8e..4fc9e15 100644 --- a/TaskE03/description.txt +++ b/TaskE03/description.txt @@ -22,7 +22,7 @@ Jeśli napis spełnia tak określony warunek, należy wypisać na standardowym wyjściu 'yes', w przeciwnym razie — 'no'. For each string check, if the string is NIP number written in -xxx-xxx-xx-xx bądź xxx-xx-xx-xxx format. You don't need to consider a checksum. +xxx-xxx-xx-xx or xxx-xx-xx-xxx format. You don't need to consider a checksum. If the string fulfills the condition, you should print 'yes' on the standard output and 'no' otherwise. diff --git a/TaskE03/run.py b/TaskE03/run.py new file mode 100644 index 0000000..b83d8d7 --- /dev/null +++ b/TaskE03/run.py @@ -0,0 +1,41 @@ +import re + +FILE_NAME = "test" + +MODE = "test" + + +def is_correct(line: str): + looking_pattern = re.compile(r"^\d{3}-\d{3}-\d{2}-\d{2}$|^\d{3}-\d{2}-\d{2}-\d{3}$") + + if re.search(looking_pattern, line): + return "yes" + else: + return "no" + + +if MODE == "test": + with open(FILE_NAME + ".in", "r", newline="", encoding="utf8") as file: + text = [line.rstrip() for line in file.readlines()] + + with open(FILE_NAME + ".exp", "r", newline="", encoding="utf8") as file: + expected = [line.rstrip() for line in file.readlines()] + + out: list[str] = [] + for line in text: + out.append(is_correct(line)) + + for ind, found in enumerate(out): + if found == expected[ind]: + print(found) + else: + print(f"ERROR: expected - {expected[ind]}, found - {found}") + +elif MODE == "input": + line = input("Enter a line: ") + + # Check if the line is an acronym and print 'yes' or 'no' + if is_correct(line) == "yes": + print("yes") + else: + print("no") diff --git a/TaskE04/run.py b/TaskE04/run.py new file mode 100644 index 0000000..ffb5834 --- /dev/null +++ b/TaskE04/run.py @@ -0,0 +1,41 @@ +import re + +FILE_NAME = "test" + +MODE = "test" + + +def is_correct(line: str): + looking_pattern = re.compile(r"^((555-\d{3}-\d{3})|(555 \d{3} \d{3}))$") + + if re.search(looking_pattern, line): + return "yes" + else: + return "no" + + +if MODE == "test": + with open(FILE_NAME + ".in", "r", newline="", encoding="utf8") as file: + text = [line.rstrip() for line in file.readlines()] + + with open(FILE_NAME + ".exp", "r", newline="", encoding="utf8") as file: + expected = [line.rstrip() for line in file.readlines()] + + out: list[str] = [] + for line in text: + out.append(is_correct(line)) + + for ind, found in enumerate(out): + if found == expected[ind]: + print(found) + else: + print(f"ERROR: expected - {expected[ind]}, found - {found}") + +elif MODE == "input": + line = input("Enter a line: ") + + # Check if the line is an acronym and print 'yes' or 'no' + if is_correct(line) == "yes": + print("yes") + else: + print("no")