当前位置: 首页 > news >正文

南宁营销型网站建设公司优化大师官方

南宁营销型网站建设公司,优化大师官方,广东营销型网站建设多少钱,网站推广计划渠道本篇将详细介绍 Cangjie 中的浮点类型,包括浮点数的表示方法、精度、舍入与溢出处理、科学计数法表示、字面量的进制表示、常用运算、类型转换及应用场景,帮助开发者掌握浮点数的使用方法。 关键词 浮点类型表示精度与舍入溢出与下溢科学计数法类型转换…

本篇将详细介绍 Cangjie 中的浮点类型,包括浮点数的表示方法、精度、舍入与溢出处理、科学计数法表示、字面量的进制表示、常用运算、类型转换及应用场景,帮助开发者掌握浮点数的使用方法。


关键词
  • 浮点类型表示
  • 精度与舍入
  • 溢出与下溢
  • 科学计数法
  • 类型转换
  • 字面量表示

一、浮点类型概述

在 Cangjie 中,浮点类型用于表示包含小数部分的数值,主要包括两种类型:

  • 单精度浮点数Float32):约 6-7 位有效数字,适用于内存占用较低的场景。
  • 双精度浮点数Float64):约 15-16 位有效数字,适用于对精度要求较高的场景。

建议:若没有特殊的内存限制,优先使用 Float64 以获得更高精度。


二、浮点数的表示范围与精度

浮点数的表示范围取决于其位数限制:

  1. 单精度浮点数Float32):范围约为 ±3.4 × 10^38。
  2. 双精度浮点数Float64):范围约为 ±1.8 × 10^308。

由于浮点数使用二进制存储,在高精度运算中可能会出现舍入误差。


三、浮点类型字面量的表示

Cangjie 中的浮点类型字面量支持两种进制表示方式:十进制十六进制

  • 十进制表示:字面量至少需要包含整数或小数部分。当没有小数部分时,必须包含指数部分(以 eE 为前缀,底数为 10)。

  • 十六进制表示:字面量以 0x0X 为前缀,指数部分以 pP 表示(底数为 2),同样至少需要包含整数或小数部分。

示例

let a: Float32 = 3.14       // 十进制
let b: Float32 = 2e3        // 科学计数法
let c: Float32 = 0x1.1p0    // 十六进制
let d: Float64 = 0x.2p4     // 十六进制

四、浮点数的科学计数法表示

在 Cangjie 中,浮点数可以通过科学计数法表示,适合表示较大或较小的数值。使用 eE 表示指数部分,例如:1.23e4 表示 1.23 × 10^4

示例

let bigNum = 3.45e6      // 表示 3450000
let smallNum = 2.67e-4   // 表示 0.000267println("大数: ${bigNum}, 小数: ${smallNum}")

输出:

大数: 3450000.000000, 小数: 0.000267

五、浮点数的运算

浮点数支持基础的算术运算和数学函数(如平方根、绝对值等),但需注意运算过程中可能出现精度损失。

5.1 算术运算

浮点数的加、减、乘、除操作如下:

let a: Float64 = 10.5
let b: Float64 = 3.2let sum = a + b        
let difference = a - b  
let product = a * b     
let quotient = a / b    println("加法: ${sum}, 减法: ${difference}, 乘法: ${product}, 除法: ${quotient}")

输出:

加法: 13.700000, 减法: 7.300000, 乘法: 33.600000, 除法: 3.281250

六、浮点数的溢出与下溢
  • 溢出:当浮点数超过最大表示范围时,Cangjie 会返回 inf
  • 下溢:当浮点数低于最小表示范围时,Cangjie 会返回 0.000000
let overflow = 1e309    // 超出 Float64 范围
let underflow = 1e-324  // 小于 Float64 范围println("溢出: ${overflow}, 下溢: ${underflow}")

输出:

溢出: inf, 下溢: 0.000000

七、浮点类型的后缀表示

为明确浮点字面量的类型,可在字面量后添加特定后缀:

后缀类型
f16Float16
f32Float32
f64Float64

示例

let a = 3.14f32   // a 的类型为 Float32
let b = 2e3f32    // b 的类型为 Float32
let c = 2.4e-1f64 // c 的类型为 Float64
let d = .123e2f64 // d 的类型为 Float64

八、浮点数的类型转换

浮点数与整数之间可以相互转换,但浮点转整数时会截断小数部分。

let floatNum: Float64 = 10.99
let intNum: Int32 = Int32(floatNum)  // 转换后小数部分被截断println("浮点数: ${floatNum}, 转换后的整数: ${intNum}")

输出:

浮点数: 10.990000, 转换后的整数: 10

九、浮点数的应用场景

浮点数适用于科学计算、货币金额表示等场景。

9.1 科学计算
let radius = 5.5
let area = 3.14159 * radius * radiusprintln("圆的面积: ${area}")

输出:

圆的面积: 95.033097
9.2 精确计算

在价格计算中,可使用浮点数表示更精确的金额:

let pricePerItem: Float64 = 19.99
let quantity: Float64 = 3.0
let totalPrice = pricePerItem * quantityprintln("总价: ${totalPrice}")

输出:

总价: 59.970000

十、浮点类型支持的操作符

浮点类型支持以下操作符:

  • 算术操作符:如 +-*/ 等。
  • 关系操作符:如 <>== 等。
  • 赋值操作符:如 =
  • 复合赋值操作符:如 +=-=

注意:浮点类型不支持自增(++)和自减()操作符。


小结

本篇详细讲解了 Cangjie 浮点类型的表示范围、科学计数法表示、字面量的进制表示、基本运算、舍入控制及应用场景,帮助开发者熟练运用浮点数处理涉及小数的计算任务。


下篇预告

下一篇将解析 Cangjie 的 布尔类型,探讨布尔运算及其在条件判断中的应用,敬请关注 「Mac玩转仓颉内测版25」基础篇5 - 布尔类型详解


上一篇:「Mac玩转仓颉内测版23」基础篇3 - 深入理解整数类型
下一篇:「Mac玩转仓颉内测版25」基础篇5 - 布尔类型详解

作者:SoraLuna
链接:https://www.nutpi.net/thread?topicId=206
來源:坚果派
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


http://www.tj-hxxt.cn/news/15131.html

相关文章:

  • 连云港网站建设哪家好百度移动
  • 网页建立seo网站关键词优化报价
  • 网站模板下载 网盘关键词优化推广
  • 专业做网站开发费用seow是什么意思
  • 德清县建设局网站seo网站推广经理招聘
  • java网站做微信分享免费网站流量统计
  • 怎么用域名建网站信息流优化师发展前景
  • 网站affiliate怎么做广州推广排名
  • 毕业设计做啥网站好360优化大师官方网站
  • 微信备份wordpressseo网站推广教程
  • 长沙做网站优化的公司最佳bt磁力猫
  • 网站建设seo视频教程百度sem竞价推广pdf
  • thinkphp企业网站宁波seo推广服务
  • 商城版免费网站制作建设官网的网站首页
  • 做鞋子网站的域名公司网站免费自建
  • 广州知名网站建设哪家好郑州官网网站推广优化
  • 天津企业网站设计哪家好搜狗链接提交入口
  • 基于wordpress个人博客网站论文91
  • 做网站哪个公司服务营销的七个要素
  • 做cpa网站推广普通话手抄报图片
  • 南京公司做网站科技公司网站制作公司
  • 大型网站 建设意义怎样做关键词排名优化
  • 番禺区核酸检测点搜索引擎优化的方法有哪些?
  • 佛山门户网站建设公司企业培训机构哪家最好
  • 用php怎么做网站阳城seo排名
  • 重庆做网站建设公司排名网站seo诊断工具
  • 鑫牛元网站建设西安seo外包行者seo
  • 武汉网站快照推广广东东莞疫情最新情况
  • 浙江省交通建设工程监督管理局网站电脑培训班一般多少钱
  • 呼和浩特网站建设yoast seo