程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在自动售货机中添加库存加法器(询问用户是否要为当前缺货的商品添加一些库存)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决在自动售货机中添加库存加法器(询问用户是否要为当前缺货的商品添加一些库存)?

开发过程中遇到在自动售货机中添加库存加法器(询问用户是否要为当前缺货的商品添加一些库存)的问题如何解决?下面主要结合日常开发的经验,给出你关于在自动售货机中添加库存加法器(询问用户是否要为当前缺货的商品添加一些库存)的解决方法建议,希望对你解决在自动售货机中添加库存加法器(询问用户是否要为当前缺货的商品添加一些库存)有所启发或帮助;

您好,我在为自动售货机程序创建库存加法器时遇到问题。例如,如果巧克力没有剩余库存,则系统会询问用户是否要添加一些库存。如果用户回答“否”,则系统将被终止,或者用户将订购另一件商品。

    class Item:
    def __init__(self,name,price,stock):
        self.name = name
        self.price = price
        self.stock = stock

    def updateStock(self,stock):
        self.stock = stock

    def buyFromStock(self):
        if self.stock == 0:
            pass
        self.stock -= 1

class vendingMachine:
    def __init__(self):
        self.amount = 0
        self.items = []

    def addItem(self,item):
        self.items.append(item)

    def showItems(self):
        print('\nitems available \n***************')

        for item in self.items:      
            if item.stock == 0:
                self.items.remove(item)
        for item in self.items:
            print(item.name,item.price)

        print('***************\n')

    def addCash(self,money):
        self.amount = self.amount + money

    def buyItem(self,item):
        if self.amount < item.price:
            print('You can\'t but this item. Insert more coins.')
        else:
            self.amount -= item.price
            item.buyFromStock()
            print('You got ' +item.name)
            print('Cash remaining: ' + str(self.amount))

    def containsItem(self,wanted):
        ret = False
        for item in self.items:
            if item.name == wanted:
                ret = True
                break
        return ret

    def getItem(self,wanted):
        ret = None
        for item in self.items:
            if item.name == wanted:
                ret = item
                break
        return ret

    def insertAmountForItem(self,item):
        price = item.price
        while self.amount < price:
                self.amount = self.amount + float(input('insert ' + str(price - self.amount) + ': '))

    def checkrefund(self):
        if self.amount > 0:
            print(self.amount + " refunded.")
            self.amount = 0

        print('Thank you,have a nice day!\n')


def vend():

    machine = vendingMachine()
    item1 = Item('Chocolate',50,2)
    item2 = Item('Popcorn',25,1)
    item3 = Item('Tortillas',30,3)
    item4 = Item('Hotdog',27,1)
    item5 = Item('Coffee',10,3)
    machine.addItem(item1)
    machine.addItem(item2)
    machine.addItem(item3)
    machine.addItem(item4)
    machine.addItem(item5)

    print('Welcome to the vending machine!\n***************')

    continuetoBuy = True
    while continuetoBuy == True:
        machine.showItems()
        selected = input('select item: ')
        if machine.containsItem(selected):
            item = machine.getItem(selected)

            machine.insertAmountForItem(item)
            machine.buyItem(item)

            a = input('buy something else? (y/n): ')
            if a == 'n':
                continuetoBuy = False
                machine.checkrefund()
            else:
                continue

        else:
            print('Item not available. Select another item.')
            continue

vend()

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

大佬总结

以上是大佬教程为你收集整理的在自动售货机中添加库存加法器(询问用户是否要为当前缺货的商品添加一些库存)全部内容,希望文章能够帮你解决在自动售货机中添加库存加法器(询问用户是否要为当前缺货的商品添加一些库存)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: