From 69ac712c0c8d5c719e2614b51f384673676b00e5 Mon Sep 17 00:00:00 2001 From: DAKursad <122346253+DAKursad@users.noreply.github.com> Date: Fri, 10 Feb 2023 06:35:22 +0100 Subject: [PATCH] Week4_Assignments --- AtoZ_files/AtoZ files.py | 8 +++ LCM.py | 11 +++ Letters/Letters for each line.py | 9 +++ Letters/letters.txt | 52 ++++++++++++++ Mis Calculator/Add_C.py | 4 ++ Mis Calculator/Div_C.py | 4 ++ Mis Calculator/Mis Calculator.py | 64 ++++++++++++++++++ Mis Calculator/Mul_C.py | 4 ++ Mis Calculator/Subt_C.py | 4 ++ .../__pycache__/Add_C.cpython-311.pyc | Bin 0 -> 448 bytes .../__pycache__/Div_C.cpython-311.pyc | Bin 0 -> 451 bytes .../__pycache__/Mul_C.cpython-311.pyc | Bin 0 -> 453 bytes .../__pycache__/Subt_C.cpython-311.pyc | Bin 0 -> 454 bytes 13 files changed, 160 insertions(+) create mode 100644 AtoZ_files/AtoZ files.py create mode 100644 LCM.py create mode 100644 Letters/Letters for each line.py create mode 100644 Letters/letters.txt create mode 100644 Mis Calculator/Add_C.py create mode 100644 Mis Calculator/Div_C.py create mode 100644 Mis Calculator/Mis Calculator.py create mode 100644 Mis Calculator/Mul_C.py create mode 100644 Mis Calculator/Subt_C.py create mode 100644 Mis Calculator/__pycache__/Add_C.cpython-311.pyc create mode 100644 Mis Calculator/__pycache__/Div_C.cpython-311.pyc create mode 100644 Mis Calculator/__pycache__/Mul_C.cpython-311.pyc create mode 100644 Mis Calculator/__pycache__/Subt_C.cpython-311.pyc diff --git a/AtoZ_files/AtoZ files.py b/AtoZ_files/AtoZ files.py new file mode 100644 index 0000000..ad5314a --- /dev/null +++ b/AtoZ_files/AtoZ files.py @@ -0,0 +1,8 @@ +import os + +for letter in list(map(chr, range(65, 91))): # for letter in range(A...Z) + file_name = "%s.txt" % letter + while not os.path.exists(file_name): + fh = open(file_name, "w") + + \ No newline at end of file diff --git a/LCM.py b/LCM.py new file mode 100644 index 0000000..931d4ef --- /dev/null +++ b/LCM.py @@ -0,0 +1,11 @@ +import math + +numbers = [] +while len(numbers)!=4: + try: + numbers.append(int(input(f"input {len(numbers)+1}. of 4 integer for l.c.m. calculation : "))) + pass + except: + print("Enter an integer") +lcm_= math.lcm(*numbers) +print(f"least common multiple of {numbers} = {lcm_}") \ No newline at end of file diff --git a/Letters/Letters for each line.py b/Letters/Letters for each line.py new file mode 100644 index 0000000..d272d09 --- /dev/null +++ b/Letters/Letters for each line.py @@ -0,0 +1,9 @@ +import os + +row_len = int(input("How many copy :")) +try: + f = open("letters.txt","w", encoding = 'utf-8') + for letter in "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ": + f.write(letter*row_len+'\n') +finally: + f.close() \ No newline at end of file diff --git a/Letters/letters.txt b/Letters/letters.txt new file mode 100644 index 0000000..ccce0e2 --- /dev/null +++ b/Letters/letters.txt @@ -0,0 +1,52 @@ +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +cccccccccccccccccccccccccccccccccc +dddddddddddddddddddddddddddddddddd +eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee +ffffffffffffffffffffffffffffffffff +gggggggggggggggggggggggggggggggggg +hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh +iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii +jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj +kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk +llllllllllllllllllllllllllllllllll +mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm +nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn +oooooooooooooooooooooooooooooooooo +pppppppppppppppppppppppppppppppppp +qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq +rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr +ssssssssssssssssssssssssssssssssss +tttttttttttttttttttttttttttttttttt +uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu +vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv +wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww +xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx +yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy +zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB +CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC +DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD +EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG +HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH +IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII +JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ +KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK +LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL +MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM +NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN +OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO +PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP +QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ +RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR +SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS +TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT +UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU +VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV +WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY +ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ diff --git a/Mis Calculator/Add_C.py b/Mis Calculator/Add_C.py new file mode 100644 index 0000000..22e2ab1 --- /dev/null +++ b/Mis Calculator/Add_C.py @@ -0,0 +1,4 @@ +import math + +def add(a:float, b:float): + return math.ceil(a + b) \ No newline at end of file diff --git a/Mis Calculator/Div_C.py b/Mis Calculator/Div_C.py new file mode 100644 index 0000000..bef56d9 --- /dev/null +++ b/Mis Calculator/Div_C.py @@ -0,0 +1,4 @@ +import math + +def divide(a:float, b:float): + return math.ceil(a / b) \ No newline at end of file diff --git a/Mis Calculator/Mis Calculator.py b/Mis Calculator/Mis Calculator.py new file mode 100644 index 0000000..cdd3cc4 --- /dev/null +++ b/Mis Calculator/Mis Calculator.py @@ -0,0 +1,64 @@ +import Add_C, Subt_C, Mul_C, Div_C + +def print_menu(): + print("\n************") + print("1 - Add ") + print("2 - Subtract") + print("3 - Multiply") + print("4 - Divide") + print("************") + +def valid_choice(): + # this function returns validated mathematical operation choice as integer code from the menu above + while True: + print_menu() + try: + op_no = input("\nWhich calculation? (1--4) : ") + if op_no in str(list(range(1,5))): + return int(op_no) + break + else: + raise ValueError("\nInvalid value as choice!\n") + except ValueError as ve: + print(ve) + + +def valid_input(num): + # this function returns validated operands for calculation + while True: + a = input(f"{num}. number :") + try: + return float(a) + break + except ValueError: + print ("Not a float\n") + +def keep_going(): + while True: + decision = input("\nWould you like to go on? (Y/N) : ") + try: + if decision.lower() in ["y", "yes"]: + return True + elif decision.lower() in ["n", "no"]: + return False + else: + raise ValueError("Choice is not Y or N") + break + except ValueError as ve: + print (ve) + +while True: + op_no = valid_choice() # if the valid operation choice succesful + num1 = valid_input(1) + num2 = valid_input(2) + if op_no == 1: + result = Add_C.add(num1, num2) + elif op_no == 2: + result = Subt_C.subtract(num1, num2) + elif op_no == 3: + result = Mul_C.multiply(num1, num2) + elif op_no == 4: + result = Div_C.divide(num1, num2) + print (f"Result : {result}") + if keep_going() == False: + break \ No newline at end of file diff --git a/Mis Calculator/Mul_C.py b/Mis Calculator/Mul_C.py new file mode 100644 index 0000000..6db7246 --- /dev/null +++ b/Mis Calculator/Mul_C.py @@ -0,0 +1,4 @@ +import math + +def multiply(a:float, b:float): + return math.ceil(a * b) \ No newline at end of file diff --git a/Mis Calculator/Subt_C.py b/Mis Calculator/Subt_C.py new file mode 100644 index 0000000..b04864e --- /dev/null +++ b/Mis Calculator/Subt_C.py @@ -0,0 +1,4 @@ +import math + +def subtract(a:float, b:float): + return math.ceil(a - b) \ No newline at end of file diff --git a/Mis Calculator/__pycache__/Add_C.cpython-311.pyc b/Mis Calculator/__pycache__/Add_C.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..99ca8c1c16a8a3ddd91820f41304f168c7b398f3 GIT binary patch literal 448 zcmZ3^%ge<81e=aMO?Cs)k3k$5V1Y6|%K;hF8B!Qh7;_k+7*d#08B>^38Pix&SXx-3 zm{J&n88lg6f)xARVobcnn3T)})d`|NrZ5BXX9FNHouPygNI^jsoL$3E!&n6rT?Q0c z4HpHP%jl=cbc-c7u_WUbOLA&vjwVwP$gm=isl^~`6cm1irC7zdrRG&uC(;sRbpO`FXk?iFqkGnR)3kzL~`e&WSn6 zr8$Wu`9(2~DJk*JdIgoYm=jY{ia3FGfNU%l0}>4kce(j{EGGoc5S$o#kz4u-xAX-T z>CZqJ22JK7HXwD2H7zGUu>`DbB|{M?aEmyA#4iq;-29Z%oK(9aULY6b#bPTU@qw9< ek?{rtcLNxHU}0pG=}`T^0Hh|Ef+?H?*lYj+>|xRX literal 0 HcmV?d00001 diff --git a/Mis Calculator/__pycache__/Div_C.cpython-311.pyc b/Mis Calculator/__pycache__/Div_C.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..092f87809212513f1c8ed99465e2f1d133b0fbb3 GIT binary patch literal 451 zcmZ3^%ge<81e=aMP4)!Rk3k$5V1Y6|%K;hF8B!Qh7;_k+7*d#08B>^38Pix&SXx-3 zm{J&n88lg6f)xARVobcnn3T)})d`|NrZ5BXX9FNHouPygNI^jsoL$3E!&t@5z_1J` zvKlT5G?&p&lj#;qZemHsEtcfe%p6UoB9LK4AXAG$)+i|a3QMtyaZAmstWXH3EXl~v ziwRFn%{GZ~&PgmTw$KH0bloy@QguCb{dHX{l2Z#xGV}9vJreU$ax(MMV|+7<6`T`u zl1pAviJgBDeGv zZs`jw(w~7c44TYEY(VN3Yg$fzVhLE=N`@j(_!e;hiC-Kxx%nxjIjMF^38Pix&SXx-3 zm{J&n88lg6f)xARVobcnn3T)})d`|NrZ5BXX9FNHouPygNI^jsoL$3E!&t@2z_1J` zvKlT5G?&p&lj#;qZemHsEtcfe%p6UoB9LK4AXAG$)+i|a3QMtyaZAmstWXH3EXl~v ziwRFn%{GZ~&PgmTw$KH0bloy@QguCb{dHX{l2Z#xGV}9vJreU$ax(MMV|+7<6`T`u zl1pUz2%I4}G4vw0 z^c8OD3oO!~fieu5%tdTK>K1ESPJUtuSldd5B2WkyaR7;595%W6DWy57c165EF36w7 kRzTtdGb1D84F>K8F#N#6$SBiM`hfvR&0qynI0>-X0PeD6g#Z8m literal 0 HcmV?d00001 diff --git a/Mis Calculator/__pycache__/Subt_C.cpython-311.pyc b/Mis Calculator/__pycache__/Subt_C.cpython-311.pyc new file mode 100644 index 0000000000000000000000000000000000000000..78994e055316a397a73acd81c3ad4d2c879fd510 GIT binary patch literal 454 zcmZ3^%ge<81e=aMP4))Tk3k$5V1Y6|%K;hF8B!Qh7;_k+7*d#08B>^38Pix&SXx-3 zm{J&n88lg6f)xARVobcnn3T)})d`|NrZ5BXX9FNHouPygNI^jsoL$3E!&n7$$ugkG zYPcxSTt+`lrduqzi6t4gSdvpSb2OQXK!z28Of3dkqoD9BJjE);Ej6#QLLs2CBqKjB zCOkDY+a$(0C$YHLLKn=@b<502)%Dc%*LAH(PAw?O%+J&HNX$#g$;?ZS@y#q&a8Arg zF3m|S$uEitE=?+lch)PYyv0!rWELeRmlSaVZ35X_ECwVR818cO_gGE{oFOjMZEYhEWG7Or`MQlLo7He8gej-HMN`@j(5EpR(iC-Kxx%nxjIjMF