草庐IT

小数点

全部标签

c++ - 小数点后校验值

这个问题在这里已经有了答案:HowtoextractthedecimalpartfromafloatingpointnumberinC?(16个答案)关闭3年前。我有以下数字列表,它们被一个一个地发送到一个函数。96.48758796.56156997.89328097.96727098.04124598.11522798.85507298.92905499.00304499.89084699.964836如何检查点后的值是否为0,例如:99.003044or98.041245

基于“小数据”的机器学习

机器学习作为人工智能的一种最重要的实现方式,其历史可以追溯到20世纪50年代。只不过,早期受制于计算机的算力,基本没有什么能够落地的实际应用,更多的是各类算法的研究和发展。之后,随着硬件的飞速发展,终于迎来了人工智能的春天,各种机器学习的算法在我们的日常生活中得到了广泛应用(很多情况甚至我们都没有感觉到)。比如,小到各种的个性化推荐,语音控制,人脸识别等我们平时经常接触的应用,大的方面有医疗领域,机器学习的成果在这些领域帮助医生进行疾病诊断、辅助手术和治疗,以及提供个性化的健康管理方案;还有交通领域,未来的自动驾驶会给我们的出行方式带来革命性的变化。此外,机器学习还渗透到很多其他的方方面面,这

c++ - 你如何在 C++ 中四舍五入小数位?

我需要帮助将浮点值四舍五入到小数点后一位。我知道setprecision(x)和cout.如果我想将整个float四舍五入,这两种方法都有效,但我只对将小数点四舍五入到十分位感兴趣。 最佳答案 还有另一种不需要转换为int的解决方案:#includey=floor(x*10d)/10d 关于c++-你如何在C++中四舍五入小数位?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1

c++ - 用小数字代替零?

我一直在制作一个矩阵类(作为学习练习),我在测试我的反函数时遇到了问题。我这样输入一个任意矩阵:211121112然后用它来计算倒数,我得到了正确的结果:0.75-0.25-0.25-0.250.75-0.25-0.25-0.250.75但是当我尝试将两者相乘以确保我得到单位矩阵时,我得到:15.5111512e-0170010-1.11022302e-0.1601为什么我会得到这些结果?我会理解,如果我乘以奇怪的数字,我可以理解一些舍入错误,但它所做的总和是:2*-0.25+1*0.75+1*-0.25这显然是0,而不是5.111512e-017如果我手动获取它来进行计算;例如:st

c++ - 如何在 C++ 中使用小数( float )?

根据IEEE754-2008有Therearethreebinaryfloating-pointbasicformats(whichcanbeencodedusing32,64or128bits)andtwodecimalfloating-pointbasicformats(whichcanbeencodedusing64or128bits).这张图表在它下面。在C++中,我相信float和double是单精度和double(binary32和binary64)。NameCommonnameBaseDigitsEminEmaxDigitsEmaxbinary32Singleprecis

c++ 将数字的小数部分转换为整数

我需要将数字的小数部分转换为不带逗号的整数,例如我有3.35我只想得到没有零或逗号的35部分,因为我使用modf()函数提取小数部分,但它给了我0.35如果有任何方法可以做到这一点或过滤“0”。如果你能告诉我如何使用更小的代码,我将非常感激, 最佳答案 比转换为字符串再转换回来更有效:intfractional_part_as_int(doublenumber,intnumber_of_decimal_places){doubledummy;doublefrac=modf(number,&dummy);returnround(fra

c++ cout << 不要在小数点前打印 '0'

我没有找到在小数点前没有“0”的情况下写入次于1的十进制数的解决方案。我想以这种格式显示数字:“.1”、“.2”等...使用:std::cout总是给我“0.1”、“0.2”等格式...我做错了什么?感谢您的帮助 最佳答案 您需要将其转换为字符串并用于打印。如果有的话,流无法打印没有前导零的float。std::stringgetFloatWithoutLeadingZero(floatval){//convertingthenumbertoastring//withyourspecifiedflagsstd::stringstre

C++如何输出小数点后至少一位的数字

如何让我的程序输出一个数字,小数点后面至少有一个数字C++?输出:1=1.0或1.25=1.25或2.2=2.2或3.456789=3.456789提前致谢 最佳答案 使用showpoint强制打印小数点doublex=1.0;std::cout后面会跟0的个数,以满足流的精度。 关于C++如何输出小数点后至少一位的数字,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/186457

c++ - 有没有更好的方法在 C++ 中用 n 位小数舍入 float ?

我知道常见的方法是乘以10^n,然后除以10^n。roundafloatwithonedigitnumber但是由于double精度问题,我发现上面的解决方案并不完全适用于我的情况:0.965*0.9=0.8685std::round(0.8685*1000)/1000=0.869//expectsittobe0.869std::round(0.965*0.9*1000)/1000=0.868如果我想直接从std::round(0.965*0.9*1000)/1000得到0.869,我必须把语句改成std::round((0.965*0.9+std::numeric_limits::e

c++ - 原始 float 和 double 支持多少位小数?

这个问题在这里已经有了答案:'float'vs.'double'precision(6个答案)关闭7年前。我读过double存储15位数字,float存储7位数字。我的问题是,这些数字是支持的小数位数还是数字中的总位数?