用e为底来表示的浮点常量的写法与要求

2024-01-06 23:58

本文主要是介绍用e为底来表示的浮点常量的写法与要求,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

书写浮点常量有多种选择,,基本形式:包含小数点的一个带符号的数字序列,接着是字母e或E,然后是一个代表10的指数的有符号值,且必须为整数。
其中 e 或 E 被称为阶码标志,e 或 E 后面的有符号整数被称为阶码。阶码代表 10 的阶码次方。
例如:
-1.56E+12;
2.87e-3;
-8e1.0;错

浮点型常量可以省略正号,可以没有小数点或指数部分。
例如:
2E5;
19.28;
但是不能同时没有二者。
例如:
19;错

浮点型常量可以省略小数或者整数部分,但不能同时省略。
例如:
e3;错
注意:e前后的实数和整数不能省略。
-80.0e;错

注意:浮点型常量中不能有空格!例如:
3.21e -12 /* 有空格,错! */
3.14e5 /* 有空格,错! */

注意:浮点型常量有阶码的小数点前面只能有一位非0的数字。
例如:
1.81e7;//对
18.1e6;//错
另外阶码后面只能是整数,不能是整数表达式。
5.0e(1+4);//错

-------------

PHP手册里有一句话:永远不要比较两个浮点数是否相等。

计算机内部处理浮点数的方式决定了浮点数不可能100%的精确,所以在处理浮点数运算时会出现精度损失问题。比如下面这段程序:<?php $a = 15521.42; $b = 15480.3; $c = $a-$b; var_dump($c); //php4:float(41.120000000001) php5:float(41.12) var_dump($c == 41.12); //bool(false) ?>

第一条输出语句:在PHP4下输出$c可能是41.120000000001,或类似的结果,后面的1就属于精度损失的部分。在PHP5中对这个问题做了些“优化”,输出结果中不会显示不精确的部分,但同时也会让我们忽视这个问题,以为$c==41.12。

第二条输出语句:在PHP4和PHP5中都会输出false。

声明一点:这不是PHP的问题,而是计算机内部处理浮点数的问题!在C/JAVA中也会遇到同样的问题。

延伸一下:我们同样不能使用>、=或<=

这篇关于用e为底来表示的浮点常量的写法与要求的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/578057

相关文章

IDEA编译报错“java: 常量字符串过长”的原因及解决方法

《IDEA编译报错“java:常量字符串过长”的原因及解决方法》今天在开发过程中,由于尝试将一个文件的Base64字符串设置为常量,结果导致IDEA编译的时候出现了如下报错java:常量字符串过长,... 目录一、问题描述二、问题原因2.1 理论角度2.2 源码角度三、解决方案解决方案①:StringBui

Python实现阶乘的四种写法

《Python实现阶乘的四种写法》本文主要介绍了Python实现阶乘的六种写法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录第一种:推导式+循环遍历列表内每个元素相乘第二种:调用functools模块reduce的php累计

MySQL中删除重复数据SQL的三种写法

《MySQL中删除重复数据SQL的三种写法》:本文主要介绍MySQL中删除重复数据SQL的三种写法,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录方法一:使用 left join + 子查询删除重复数据(推荐)方法二:创建临时表(需分多步执行,逻辑清晰,但会

Codeforces Beta Round #47 C凸包 (最终写法)

题意慢慢看。 typedef long long LL ;int cmp(double x){if(fabs(x) < 1e-8) return 0 ;return x > 0 ? 1 : -1 ;}struct point{double x , y ;point(){}point(double _x , double _y):x(_x) , y(_y){}point op

两轴直驱稳定云台的电源系统设计与关键要求

两轴直驱稳定云台,作为现代摄影、摄像及监控领域的高精尖设备,广泛应用于各种不稳定环境(如移动车辆、海上船只、空中飞机等),以提供相机、传感器等关键设备的稳定支持。其卓越的性能和可靠性,很大程度上依赖于其精心设计的电源系统。本文将对两轴直驱稳定云台的电源系统要求进行全面剖析,并深入探讨电压波动可能带来的不良影响及应对措施。 电源系统的核心要求 高容量与功率:

从计组中从重温C中浮点数表示及C程序翻译过程

目录 移码​编辑  传统浮点表示格式 浮点数的存储(ieee 754)->修炼内功 例子:   ​编辑 浮点数取的过程   C程序翻译过程 移码  传统浮点表示格式 浮点数的存储(ieee 754)->修炼内功 根据国际标准IEEE(电⽓和电⼦⼯程协会)  32位 例子:    64位    IEEE754对有效数字M和

App Store最低版本要求汇总

1,自此日期起: 2024 年 4 月 29 日 自 2024 年 4 月 29 日起,上传到 App Store Connect 的 App 必须是使用 Xcode 15 为 iOS 17、iPadOS 17、Apple tvOS 17 或 watchOS 10 构建的 App。将 iOS App 提交至 App Store - Apple Developer 2,最低XCode版本 Xcod

将浮点型算式的中缀表达式转换成后缀表达式并算出式子结果

最近因为需要了解如何将在Win应用程序控制台输入的算式表达式转化成其后缀表达式的算法,所以在网上搜索了一下,看到许多人的程序都只是对应于运算数在0~9的范围内的整型运算式,所以自己就写了一个可以计算浮点型算式的程序,一下是运行时的截图: 式子中的a,b,c是可供用户自行输入的变量。 首先,我先对输入的运算符进行了简单的合法性判断,我的判断代 码如下: //函数的传入参

从零开始学习JVM(七)- StringTable字符串常量池

1 概述 String应该是Java使用最多的类吧,很少有Java程序没有使用到String的。在Java中创建对象是一件挺耗费性能的事,而且我们又经常使用相同的String对象,那么创建这些相同的对象不是白白浪费性能吗。所以就有了StringTable这一特殊的存在,StringTable叫做字符串常量池,用于存放字符串常量,这样当我们使用相同的字符串对象时,就可以直接从StringTable

高精度计算----减法运算(浮点型)

基于上一贴,修改减法运算适合于高精度浮点型计算。 因为减法比加法难度大一点,考虑的地方也要多一些,可能代码有欠缺,欢迎指出。 运算说明: 1、相减函数依旧没改变,包括上一贴的判断被减数与减数的大小函数也没变。 2、增加两个函数,取小数位数函数和结果处理(回归小数点)函数 3、与加法浮点高精度运算相比,这里改变较多的是结果处理函数,加法加完后,位数不减反增,而且最多增一位。减法会消失掉好多