Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 73 additions & 0 deletions Register.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
#Guriqbal Singh
#September 10, 2021
#Cash Register - SoftWriters -
import math
import random

#Assign values to each denomination and update cents
def change(cents): #this function will determine how much change is owed to the customer //logic
dollars =0 #Assign Dollars to value 0
quarters =0 #Assign Quarters to value 0
dimes =0 #Assign Dimes to value 0
nickels =0 #Assign Nickels to value 0
pennies =0 #Assign Pennies to value 0
dollars = int(cents / 100) #Dollars
cents = cents - (dollars * 100)
quarters = math.trunc(cents/25) #Convert Cents to quarters
cents = cents - (quarters*25) #subtract converted quarters from cents
dimes = math.trunc(cents/10) #Convert Cents to dimes
cents = cents - (dimes*10) #subtract converted dimes from cents
nickels = math.trunc(cents/5) #Convert Cents to nickels
cents = cents - (nickels*5) #subtract converted nickles from cents
pennies = cents
data=""


#return all the data

if(float(dollars)!=0): #if dollars is != 0 if value is > 0 then append the string
if(data==""):
data = "Dollars: ", float("{:.2f}".format(dollars))
else:
data = data ," , Dollars: ", float("{:.2f}".format(dollars))
if (float(quarters) != 0): #if quarters is != 0
if (data == ""):
data = "Quarters: ", float("{:.2f}".format(quarters))
else:
data = data ," , Quarters: ", float("{:.2f}".format(quarters))
if (float(dimes) != 0): #if dimes is != 0
if (data == ""):
data = "Dimes: ", float("{:.2f}".format(dimes))
else:
data = data," , Dimes: ", float("{:.2f}".format(dimes))
if (float(nickels) != 0): #if nickels is != 0
if (data == ""):
data = "Nickles: ", float("{:.2f}".format(nickels))
else:
data = data ," , Nickels: ", float("{:.2f}".format(nickels))
if (pennies != 0 and cents!=0): #if pennies is != 0
if (data == ""):
data = "Pennies: ", float("{:.2f}".format(pennies))
else:
data = data ," , Pennies: ", float("{:.2f}".format(pennies))

#format the results so that it looks clean and not overloaded with parentheses.
data = str(data)
data = data.replace("(","")
data = data.replace(")", "")
return data


datatoWrite = [] #for the outputfile
f = open("output.txt", "w")
with open ("test.txt") as file: #open test.txt
for line in file: #read file line by line
line = line.rstrip("\n").split(",") #seprate lines by commas and remove "\n"
total_due = float(line[1])-float(line[0]) #calculation for the amount due to the customer
cents = total_due*100 #Convert total into Cents
data = str((change(cents))) #call the change function
datatoWrite.append(data)
print(data)
for line in datatoWrite:
f.write("%s\n" % line) #print the results in output.txt
f.close()
10 changes: 10 additions & 0 deletions output.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
'Quarters: ', 1.0, ' , Dimes: ', 2.0, ' , Pennies: ', 0.0
'Dollars: ', 4.0, ' , Quarters: ', 1.0, ' , Dimes: ', 1.0, ' , Nickels: ', 1.0, ' , Pennies: ', 1.0
'Quarters: ', 3.0, ' , Nickels: ', 1.0, ' , Pennies: ', 5.0
'Dollars: ', 1.0, ' , Quarters: ', 1.0, ' , Dimes: ', 2.0
'Dollars: ', 44.0, ' , Pennies: ', 1.0
'Dollars: ', 39.0, ' , Quarters: ', 2.0, ' , Dimes: ', 2.0, ' , Pennies: ', 0.0
'Dollars: ', 5.0, ' , Quarters: ', 2.0, ' , Pennies: ', 5.0
'Dollars: ', 44.0, ' , Quarters: ', 2.0, ' , Dimes: ', 1.0, ' , Nickels: ', 1.0, ' , Pennies: ', 2.0
'Pennies: ', 5.0
'Dimes: ', 1.0, ' , Pennies: ', 2.0
10 changes: 10 additions & 0 deletions test.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
2.55,3.00
5.59,10.00
4.15,5.00
1.55,3.00
55.99,100.00
60.30,100.00
44.45,50.00
105.33,150.00
1.96,2.01
1.88,2.00