非正常情况下的移动加权平均算法

什么叫移动加权平均法?

百度上的解释:移动加权平均法是指以每次进货的成本加上原有库存存货的成本,除以每次进货数量与原有库存存货的数量之和,

据以计算加权平均单位成本,以此为基础计算当月发出存货的成本和期末存货的成本的一种方法。

这只能说是正常使用情况下的(或者说书面上理想情况下的)移动加权平均算法。

这种算法是建立在先进货(有了库存成本),后销售的条件上才能计算。

什么叫非正常情况?

因为有“先卖后进”的现象存在。商品没有进货,就要销售。这时,商品资料不完善(商品只有售价,没有进价,没有库存数量),商品就要售卖。

商品每销售一个就减少一个库存数量,因为没有进货,所以商品的库存数量会出现“负库存”。

销售的时候不知道销售成本价。

非正常情况下如何计算商品的移动加权平均价(以下简称平均价)?

要分3种情况:

1)当商品的原平均价=0,商品的平均价=本次进货成本价

2)当商品的原平均价为NULL(商品未初始化过,故平均价为NULL),商品的平均价=本次进货成本价

3)当商品的原平均价>0,(原平均价*库存数量+本次进货成本)/(库存数量+本次进货数量)

库存数量=原库存数量+本次进货数量

库存成本=平均价*库存数量

非正常情况下的移动加权平均算法相关推荐

  1. 快速排序在最坏的情况下时间复杂度(Ω(nlgn)(算法导论第三版9.3-3))

    快速排序在最坏的情况下时间复杂度Ω(nlgn) 1⃣️在元素各异时或者少量相等(元素个数n>70) 时间复杂度Ω(nlgn) void quick_sort_by_median(int *arr ...

  2. BM算法的shift1表是在所有情况下移动都是最快的吗?

     Shift1表并不是所有的情况下都是移动最快的,比如如下的文本字符串和搜索字符串,当比 较到上图所示位置的时候发现I和A不匹配,按照shift1的方式,应该移动3位,如下图所示, 但是移动3位并 ...

  3. 算法训练营 重编码_关于如何在没有训练营的情况下学习编码的10条提示

    算法训练营 重编码 Seattle 2017. I had just attended my first team meeting at my first job as a software deve ...

  4. 有一副由NxN矩阵表示的图像,这里每个像素用一个int表示,请编写一个算法,在不占用额外内存空间的情况下(即不使用缓存矩阵),将图像顺时针旋转90度。 给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转

    有一副由NxN矩阵表示的图像,这里每个像素用一个int表示,请编写一个算法,在不占用额外内存空间的情况下(即不使用缓存矩阵),将图像顺时针旋转90度. 给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转 ...

  5. 雪花算法——分库分表情况下id解决方案

    雪花算法--分库分表情况下id解决方案 分库分表的情况下id会遇到哪些挑战 分库分表id的解决方案 低并发情况下,使用中心数据库自增 使用不同步长数据库自增解决. 使用UUID 使用redis 使用M ...

  6. Leapfrog Triejoin:最坏情况下的最优连接算法

    介绍 leapfrog triejoin是商业数据记录系统 LogicBlox® 采用的一种新颖的连接算法,在不同的基准测试中表现出色.leapfrog triejoin论文的写作者认为这个算法,即使 ...

  7. 分布式协议与算法实战——拜占庭将军问题:有叛徒的情况下,如何才能达成共识?(笔记)

    拜占庭将军问题(The Byzantine Generals Problem),其实是借拜占庭将军的故事展现了分布式共识问题,还探讨和论证了解决的办法.实际上,它是分布式领域最复杂的一个容错模型,一旦 ...

  8. MySQL 分页优化中的 “ INNER JOIN方式优化分页算法 ” 到底在什么情况下会生效?...

    最近无意间看到一个 MySQL 分页优化的测试案例,并没有非常具体地说明测试场景的情况下,给出了一种经典的方案.因为现实中很多情况都不是固定不变的,能总结出来通用性的做法或者说是规律,是要考虑非常多的 ...

  9. MySQL 分页优化中的 “ INNER JOIN方式优化分页算法 ” 到底在什么情况下会生效?

    最近无意间看到一个 MySQL 分页优化的测试案例,并没有非常具体地说明测试场景的情况下,给出了一种经典的方案.因为现实中很多情况都不是固定不变的,能总结出来通用性的做法或者说是规律,是要考虑非常多的 ...

最新文章

  1. Cesium调用天地图的新问题
  2. linux内核参数优化
  3. 整合公司3个网站后台管理子系统的经验总结 - 实现多系统的单点登录(ASP.NET + ASP)...
  4. Scrum项目5.0
  5. 计算机科学 理学,077500计算机科学与技术(理学).doc
  6. 软件工程概论 课堂练习【静态结构建模——画出相应的对象模型】
  7. Android开发之百度地图定位以及简单覆盖物的实现
  8. tempdb 相关总结
  9. 求最长单调子序列java,单调减子序列(java实现)
  10. Linux入门学习(五)
  11. python怎么输入三个数按大小输出_Python练习一 : 随机输入三数字,按大小顺序输出...
  12. Kotlin学习笔记 第二章 类与对象 第一节类与继承(补)
  13. 阿里云端安装mysql
  14. (尚硅谷)2022 版 MyBatis 教程笔记一
  15. 熬了多少个夜晚,大家期待的《网络工程师思科华为华三实战案例红宝书》即网工必备技术命令大全版本1完书...
  16. vt功能对计算机有影响吗,电脑开vt有什么坏处
  17. 2010.04.20 工作之路 - 明源軟件科技
  18. lint-staged 自动修复格式错误
  19. gba口袋妖怪c语言源代码,查看“精灵宝可梦 火红·叶绿”的源代码
  20. TCP协议-TCP服务特点和头部结构

热门文章

  1. 图像的平滑滤波、边缘检测、阈值化、腐蚀膨胀等原理介绍
  2. opencv-python使用cvui编写界面
  3. 如何从一款单片机移植到另一款单片机
  4. 计算机键盘毕业设计,毕业论文--智能键盘设计方案.doc
  5. 电小天线理论仿真-单极子天线1
  6. 最小二乘法拟合python实现
  7. 气相色谱仪分析常用的色谱定量方法有哪些?
  8. Mac电脑远程连接Windows桌面Microsoft Remote Desktop
  9. html css调用自定义字体,css怎么自定义字体样式?
  10. Makefile 零基础学习笔记:if 的用法