zoukankan      html  css  js  c++  java
  • 2020-08-09:如何实现两金额数据相加(最多小数点两位)?

    福哥答案2020-08-09:

    1.整数存储。比如1.23元,用123存储。
    2.字符串存储。比如1.23元,用"123.00"存储。
    3.高精度浮点数存储。比如java里用BigDecimal,c#里用decimal。有精度损失。

    参考答案
    其实问题并不难,就是考察候选人对 JavaScript 数据运算上的认知以及考虑问题的缜密程度,有很多坑,可以用在笔试题,如果用在面试,回答过程中还可以随机加入有很多计算机基础的延伸。

    回到这个问题,由于直接浮点相 yu 加会失精,所以要转整数;
    (可以插入问遇到过吗?是否可以举个例子?)。

    转整数是第一个坑,虽然只有两位可以通过乘以100转整数,但由于乘以一百和除以一百都会出现浮点数的运算,所以也会失精,还是要通过字符串来转;(可以插入问字符串转整数有几种方式?) 字符串转整是第二个坑,因为最后要对齐计算,如果没考虑周全先toFixed(2),对于只有一位小数点数据进入计算就会错误;转整数后的计算是个加分点,很多同学往往就是直接算了,如果可以考虑大数计算的场景,恭喜同学进入隐藏关卡,这就会涉及如何有效循环、遍历、算法复杂度的问题。
    ***
    [评论](https://user.qzone.qq.com/3182319461/blog/1596929963)

  • 相关阅读:
    Xcode8中Swift3.0适配问题
    Swift3.0语法变化
    一起聊聊 Swift 3.0
    Swift 3.0 的 open,public,internal,fileprivate,private 关键字
    leetcode先刷_Binary Tree Level Order Traversal II
    java + memcached安装
    POJ 2533-Longest Ordered Subsequence(DP)
    网络协议——IP
    使用百度地图——入门
    取消延时功能
  • 原文地址:https://www.cnblogs.com/waitmoon/p/13466238.html
Copyright © 2011-2022 走看看