首页 > 其他分享 >数字相加,出现一大串小数问题

数字相加,出现一大串小数问题

时间:2024-11-12 17:40:35浏览次数:1  
标签:一大 num2 num1 相加 replace let total 浮点数 小数

方法 1: 使用整数进行计算
通过将浮点数转换为整数进行计算,然后再转换回浮点数,可以有效避免浮点数精度问题。
let num1 = 68121.81;
let num2 = 181927.58;

// 将数字转换为整数进行计算
let total = (num1 * 100 + num2 * 100) / 100;

// 使用 toString() 方法去掉多余的零和小数点
let formattedTotal = total.toString().replace(/(.\d?[1-9])0+$/, '$1').replace(/.$/, '');
console.log(formattedTotal); // 输出 "250049.39"
方法 2: 自定义格式化函数
可以编写一个自定义函数来处理浮点数并动态显示小数位数。
function formatNumber(num) {
// 将数字转换为字符串
let str = num.toString();
// 如果没有小数部分,则直接返回
if (!str.includes('.')) {
return str;
}
// 去除多余的零和小数点
return str.replace(/(.\d
?[1-9])0+$/, '$1').replace(/.$/, '');
}

let num1 = 68121.81;
let num2 = 181927.58;
let total = num1 + num2;

let formattedTotal = formatNumber(total);
console.log(formattedTotal); // 输出 "250049.39"

标签:一大,num2,num1,相加,replace,let,total,浮点数,小数
From: https://www.cnblogs.com/menglm/p/18542362

相关文章

  • excel中查找亏损第一大第二大第三大的商品的亏损金额;涨出第一大,第二大,第三大的金额;以
     k2里的公式 =LARGE(IF(B:B="品类1",E:E),1)lL里的公式 =LARGE(IF(B:B="品类1",E:E),2)M2里额公式 =LARGE(IF(B:B="品类1",E:E),3)N2里的公式=MIN(IF(B:B="品类1",E:E),1)O2里的公式=SMALL(IF(B:B="品类1",E:E),2)P2里的公式 =SMALL(IF(B:B="品类1&......
  • LeetCode【0002】两数相加
    本文目录1中文题目2求解思路2.1基础解法:递归解法2.2最优解法:迭代法3题目总结1中文题目给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请将两个数相加,并以相同形式返回一个表示和的链表。说明:......
  • #逆序数(小数据)#xtu
     逆序数是大学线性代数的知识,易知我们要用左边第一个数依次与它右边的数比较大小,然后在用左边第二个数与它右边的数比较,可知我们需要两个循环才能完成所有的数比较大小,代码如下方案一: #include<stdio.h>intmain(){intarr[2000];intn,i=0;scanf("%d",&n);while(n!=......
  • 大整数相加[C++]
    0前言当我们遇到需要处理非常大的整数的情况时,标准的数据类型如int或longlongint可能无法满足需求,因为这些类型的数值范围有限。在这种情况下,我们需要一种方法来处理超出常规数据类型范围的大整数。本文将介绍如何使用C++实现大整数相加。1大整数相加的基本原理从最低位开......
  • 代码随想录第七天|哈希表part02--454.四数相加II、383. 赎金信、15. 三数之和、18. 四
    资源引用:leetcode题目:454.四数相加Ⅱ(454.四数相加II-力扣(LeetCode))383.赎金信(383.赎金信-力扣(LeetCode))15.三数之和(15.三数之和-力扣(LeetCode))18.四数之和(18.四数之和-力扣(LeetCode))例行碎碎念:今天也追赶上了一些进度,虽然生病感冒,但今天很好的坚持了从早到晚......
  • 20241107,LeetCode 每日一题,使用 Go 计算两数相加
    思路模拟加法:链表存储的是逆序数位,因此从头节点开始,逐位相加可以模拟正常的加法。每两个节点的值相加,并记录进位。逐节点相加:创建一个新的链表,用于存储结果,每次将两个链表对应节点的值加上进位值,结果存储到新链表的节点中。计算过程中,将(l1.Val+l2.Val+carry)相加的......
  • 20241107,LeetCode 每日一题,使用 Go 计算两数相加
    思路模拟加法:链表存储的是逆序数位,因此从头节点开始,逐位相加可以模拟正常的加法。每两个节点的值相加,并记录进位。逐节点相加:创建一个新的链表,用于存储结果,每次将两个链表对应节点的值加上进位值,结果存储到新链表的节点中。计算过程中,将(l1.Val+l2.Val+carry)相加的结......
  • 前端保留两位小数toFixed(2)会有坑
    (422.445).toFixed(2)"422.44"(422.165).toFixed(2)"422.17"(422.446).toFixed(2)"422.45"(422.455).toFixed(2)"422.45"(422.456).toFixed(2)"422.46"(422.465).toFixed(2)"422.46"(422.466).toFix......
  • xtu oj 逆序数(小数据) //冒泡排序
    题目描述给你一个序列x1,x2,…,xn,如果数对<xi,xj>,其中i<j,而xi>xj我们称之为逆序数对。一个序列的逆序数对的数目,称为这个序列的逆序数。比如说序列312,逆序数对为<3,1>和<3,2>,所以这个序列的逆序数为2。现在给你一个数字序列,请求其逆序数。输入每个样例为两行......
  • 【LeetCode】两数之和、大数相加
    主页:HABUO......