def main():
totalprofit = 0
stockname = input("Enter the name of the stock or -999 to quit: ")
while stockname != "-999":
sharesbought, purchasingprice, sellingprice, brokercommission = load()
amountpaid, amountofpaidcommission, amountstocksoldfor, amountofsoldcommission, profitorloss = calc(sharesbought, purchasingprice, sellingprice, brokercommission)
output(stockname, amountpaid, amountofpaidcommission, amountstocksoldfor, amountofpaidcommission, profitorloss)
stockname = input("Enter the name of the next stock (or -999 to quit): ")
totalprofit += profitorloss
print("\n Total profit is: ", format(totalprofit, '.2f'))
def load():
sharesbought = int(input("Number of shares bought: "))
purchasingprice = float(input("Purchasing price: "))
sellingprice = float(input("Selling price: "))
brokercommission = float(input("Broker commission: "))
return sharesbought, purchasingprice, sellingprice, brokercommission
def calc(sharesbought, purchasingprice, sellingprice, brokercommission):
amountpaid = sharesbought * purchasingprice
amountofpaidcommission = amountpaid * (brokercommission/100)
amountstocksoldfor = sharesbought * sellingprice
amountofsoldcommission = amountstocksoldfor * (brokercommission/100)
profitorloss = (amountpaid + amountofpaidcommission) - (amountstocksoldfor - amountofsoldcommission)
return amountpaid, amountofpaidcommission, amountstocksoldfor, amountofsoldcommission, profitorloss
def output(stockname, amountpaid, amountofpaidcommission, amountstocksoldfor, amountofsoldcommission, profitorloss,):
print("\n Stock name: ", stockname, sep = '')
print("Amount paid for the stock: ", format(amountpaid, '.2f'))
print("Commission paid to broker when the stock was bought: ", format(amountofpaidcommission, '.2f'))
print("Amount the stock sold for: ", format(amountstocksoldfor, '.2f'))
print("Commission paid to broker when the stock was sold: ", format(amountofsoldcommission, '.2f'))
print("Profit or loss: ", format(profitorloss, '.2f'))
main()
ながら:機能と最初の関数の目的は、ユーザが決定するまで、彼女または彼が望んでいるように何回が行われているように、入力に以下のことをユーザーを許可するようであるPythonの
- 証券名前
- 株式は
- 販売価格
- ブローカー手数料
私の主な問題は、主な機能です。私はwhileループを正しく使用しているのかどうか、まったく正しいのかどうか懐疑的です。私はプログラムを実行しようとしましたが、何も出力されません。
def main()
load()
calc()
output()
それともwhileループの中に細かいです:
はまた、私は上記のすべての機能を呼び出すために、入力された値を使用してプログラムの最後にこれを追加するべきではないのですか?
コードの最下部に 'main()'を追加します – Keatinge
while条件で 'stockname'をチェックしますが、ユーザーはwhileループの前に*入力することしかできません。決して後は、 'ストックネーム'が設定されると、それは永遠にそのままになります。新しい 'ストックネーム'のために、whileの最下位にいるユーザに尋ねたいかもしれません。 – Evert
また、18行目で 'brokercommission'を使用するときに' brokercommision'を使います(行方不明) – Keatinge