diff --git a/file157.py b/file157.py deleted file mode 100644 index 649c872..0000000 --- a/file157.py +++ /dev/null @@ -1,30 +0,0 @@ -def enumerate(pi): - for hello in pi.a: - print(f'Next element: {hello}') -from file87 import * -try: - my_pi = pi_container() - pi_gen = foo(5) - my_pi.mth(pi_gen.__next__()) - my_pi.mth(pi_gen.__next__()) - my_pi.mth(pi_gen.__next__()) - my_pi.mth(pi_gen.__next__()) - my_pi_2 = pi_container() - my_pi.mth(pi_gen.__next__()) - my_pi.mth(pi_gen.__next__()) - my_pi.mth(pi_gen.__next__()) -except: - print('something went horribly wrong :(') -pIgEn3 = foo(194) -for the_variable_that_contains_next_approximations_of_pi_from_generator in range(23): - my_pi_2.mth(next(pIgEn3)) -my_pi_3 = pi_container() -pi_gen = foo(6) -my_pi_3.mth([i for i in list(pi_gen)]) -print('my first pi') -enumerate(my_pi) -print('my second pi') -enumerate(my_pi_2) -new_file = open('some-file.txt', 'w') -new_file.write(f'my best pi: {my_pi_3.a[-1]}') -new_file.close() diff --git a/file87.py b/file87.py deleted file mode 100644 index 40e209e..0000000 --- a/file87.py +++ /dev/null @@ -1,35 +0,0 @@ -b = 0 -c = 0 - - -class pi_container: - def __init__(self, a=list()): - self.a = a - - def mth(self, x): - if type(x) == list: - self.a += x - else: - self.a.append(x) - - -def foo(x): - global b - global c - b = 0 - c=1 - for hello in range(x): - if hello % 2 == 0: - b += 4 / c#this is a very important operation in calculateing pi according to documentation that is provided in a seperate file in this repository, please analyse this file before using! - else: - b -= 4 / c - c += 2 - yield b - yield 'finished' - -def enumerate(pi: pi_container): - for hello in pi.a: - print(hello) - - -print('All functions are defined') diff --git a/main.py b/main.py new file mode 100644 index 0000000..b59cd37 --- /dev/null +++ b/main.py @@ -0,0 +1,42 @@ +from piClass import PiClass +from piClass import calculatePi + +def enumerate(pi): + for hello in pi.value: + print(f'Next element: {hello}') + +def main(): + my_pi = PiClass() + pi_gen = calculatePi(level = 5) + try: + for pi in pi_gen: + my_pi.more_pies(pi) + + except ValueError as e: + print(e) + raise e + + pi_gen = calculatePi(level = 194) + + my_pi_2 = PiClass() + required_range = 23 + + for _ in range(required_range): + my_pi_2.appendPi(next(pi_gen)) + + my_pi_3 = PiClass() + pi_gen2 = calculatePi(6) + my_pi_3.mth([i for i in list(pi_gen2)]) + + print('my first pi') + enumerate(my_pi) + print('my second pi') + enumerate(my_pi_2) + + file_path = 'some-file.txt' + + with open(file_path, 'w') as f: + f.write(f'my best pi: {my_pi_3.best}') + +if __name__ == '__main': + main() \ No newline at end of file diff --git a/piClass.py b/piClass.py new file mode 100644 index 0000000..98652bf --- /dev/null +++ b/piClass.py @@ -0,0 +1,35 @@ +class PiClass: + def __init__(self, value : list[float] | None = None): + if value is None: + self.value = [] + else: + self.value = value + + def appendPi(self, valuePi): + if isinstance(valuePi, list): + self.value += valuePi + else: + self.value.append(valuePi) + + @property + def best(self): + return self.value[-1] + + def enumerate(self): + for pi_es in self.value: + print(pi_es) + +def calculatePi(level): + b = 0 + c = 1 + for _ in range(level): + if _ % 2 == 0: + b += 4 / c + else: + b -= 4 / c + c += 2 + yield b + + +if __name__ == '__main__': + print('All functions are defined')