浮点数

C++基础入门(数据类型)

北城以北 提交于 2020-01-14 10:52:19
数据类型 整型 sizeof关键字 实型(浮点数) 字符型 转意字符 字符串 布尔类型 数据的输入 C++规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变量分配内存 。 整型 作用 :整型变量表示的是 整数类型 的数据 C++中能够表示整型的类型有以下几种方式, 区别在于所占内存空间不同 : 数据类型 占用空间 取值范围 short(短整型) 2字节 (-2^15 ~ 2^15-1) int(整型) 4字节 (-2^31 ~ 2^31-1) long(长整形) Windows为4字节,Linux为4字节(32位),8字节(64位) (-2^31 ~ 2^31-1) long long(长长整形) 8字节 (-2^63 ~ 2^63-1) sizeof关键字 **作用:**利用sizeof关键字可以 统计数据类型所占内存大小 语法: sizeof( 数据类型 / 变量) 示例: int main ( ) { cout << "short 类型所占内存空间为: " << sizeof ( short ) << endl ; cout << "int 类型所占内存空间为: " << sizeof ( int ) << endl ; cout << "long 类型所占内存空间为: " << sizeof ( long ) << endl ; cout <<

学习总结———Python入门之基本数据类型

…衆ロ難τιáo~ 提交于 2020-01-14 08:05:51
一、基本数据类型 基本上数据类型就是常见的整数、浮点数、以及复数 1、浮点类型 浮点数可以采用科学计数法表示: e 表示 a*10^b 例如:4.3e-3 值为0.0043 9.8E5值为980000.0(E与e意义相同) 2、复数类型 例如:z=1+2i a=z.real 获得实部 1 b=z.imag 获得虚部 2 c=z.conjugate() 获得共轭复数 z = ( - 2 ) ** ( 0.5 ) a = z . real b = z . imag c = z . conjugate ( ) print ( "a={}" . format ( a ) ) print ( "b={}" . format ( b ) ) print ( "c={}" . format ( c ) ) 运行结果 3、整数类型 整数类型没什么特殊的,不做介绍 二、运算操作符 操作符及使用 描述 x+y 加,x与y的和 x-y 减,x与y的差 x*y 乘,x与y的积 x**y 幂运算,x^y,x的y次幂 x/y 除,x与y的商 10/3的结果是3.3333333333333335 x//y 整数除,x与y的商 10/3的结果是3 x%y 余数,10%3的结果是1 x += y 即x=x + y x -= y 即x=x - y x *= y 即x=x * y x /= y 即x=x / y x *

AcWing 790. 数的三次方根

柔情痞子 提交于 2020-01-13 18:53:05
原题链接 问题描述:    给定一个浮点数n,求它的三次方根。 数据范围:   −10000≤n≤10000 分析:   由题意可得,在数据范围内枚举即可得n三次方根。但n是浮点数,它的三次方根也是浮点数,   浮点数在数轴上是稠密分布的,所以只能用二分的思想无限逼近求得答案。 代码: #include<iostream> using namespace std; int main(){ double n; cin>>n; double l=-10000,r=10000; double mid; while(r-l>1e-8){ mid=(l+r)/2; if(mid*mid*mid<n)l=mid; else r=mid; } printf("%.6lf",mid); return 0; } 来源: https://www.cnblogs.com/yifeianyi/p/12187424.html

AcWing 790. 数的三次方根

心已入冬 提交于 2020-01-13 02:28:43
原题链接 问题描述:   给定一个浮点数n,求它的三次方根。 数据范围:   − 10000 ≤ n ≤ 10000 分析: 从题意可知,在数据范围内枚举即可得n的三次方根是。但n是浮点数,它的三次方根也是浮点数,浮点数在数轴上稠密分布,所以只能用二分的思想无限逼近求得答案。 代码: 1 #include<iostream> 2 using namespace std; 3 int main(){ 4 double n; 5 cin>>n; 6 double l=-10000,r=10000; 7 double mid; 8 while(r-l>1e-8){ 9 mid=(l+r)/2; 10 if(mid*mid*mid<n)l=mid; 11 else r=mid; 12 } 13 printf("%.6lf",mid); 14 return 0; 15 }       来源: https://www.cnblogs.com/yifeianyi/p/12185495.html

python学习笔记-基础

◇◆丶佛笑我妖孽 提交于 2020-01-11 05:33:16
python学习笔记 文章目录 python学习笔记 python基础 python输入输出方式: python的注释方式: 对注释方式的约定 python的数据类型: 整数 浮点数 字符串 字符串编码 字符串转义 字符串替换 字符串格式化 布尔值 空值 bytes类型 列表list 列表list的长度: 列表list的插入: 列表list的删除: 元组tuple 字典dict 判断key是否存在 dict删除key dict与list比较 集合set set添加元素 set删除元素 自定义数据类型 python的变量&常量: python的条件判断&循环: 条件判断 循环 python函数 python基础 python没有分号,python语法采用缩进的方式,这个是python跟c++比较大的一个区别 python输入输出方式: 输入: 用input()函数, input()返回的数据类型是str 输出:用print()函数,函数接收字符串,数字,表达式,多个字符串(中间用逗号间隔即可) #example: name = input() print("hello, ",name) python的注释方式: 用#进行注释 #这就是一段注释,下面输出such as print("Such as") 对注释方式的约定 Python使用缩进来组织代码块,请务必遵守约定俗成的习惯

Python中常用的模块(random模块)

别来无恙 提交于 2020-01-08 09:21:57
一、random模块简介 Python标准库 中的random函数,可以生成随机浮点数、 整数 、 字符串 ,甚至帮助你随机选择 列表 序列中的一个元素,打乱一组数据等。 二、random模块重要函数 1 )、random() 返回0<=n<1之间的随机实数n; 2 )、choice(seq) 从序列seq中返回随机的元素; 3 )、getrandbits(n) 以长整型形式返回n个随机位; 4 )、shuffle(seq[, random]) 原地指定seq序列; 5 )、sample(seq, n) 从序列seq中选择n个随机且独立的元素; 三、random模块方法说明 random.random() 函数是这个模块中最常用的方法了,它会生成一个随机的浮点数,范围是在0.0~1.0之间。 random.uniform() 正好弥补了上面函数的不足,它可以设定浮点数的范围,一个是上限,一个是下限。 random.randint() 随机生一个整数int类型,可以指定这个整数的范围,同样有上限和下限值,python random.randint。 random.choice() 可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、 元组 等。 random.shuffle() 如果你想将一个序列中的元素,随机打乱的话可以用这个函数方法。 random

数字验证正则

自作多情 提交于 2020-01-08 09:20:08
验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$ 验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$ 验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$ 验证非零的正整数:^\+?[1-9][0-9]*$ 验证非零的负整数:^\-[1-9][0-9]*$ 验证非负整数(正整数 + 0) ^\d+$ 验证非正整数(负整数 + 0) ^((-\d+)|(0+))$ 验证长度为3的字符:^.{3}$ 验证由26个英文字母组成的字符串:^[A-Za-z]+$ 验证由26个大写英文字母组成的字符串:^[A-Z]+$ 验证由26个小写英文字母组成的字符串:^[a-z]+$ 验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$ 验证由数字、26个英文字母或者下划线组成的字符串:^\w+$ 验证用户密码:^[a-zA-Z]\w{5,17}$ 正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。 验证是否含有 ^%&',;=?$\" 等字符:[^%&',;=?$\x22]+ 验证汉字:^[\u4e00-\u9fa5],{0,}$ 验证Email地址:^\w+[-+.]\w+)*@\w+

计算机应用技术:一、计算机应用基础问题

别等时光非礼了梦想. 提交于 2020-01-08 08:03:06
1、简述计算和算法概念的含义。   计算:映射或基于规则的符号串的变换过程。   算法:求解某类问题的通用法则或方法,即符号串变换的规则。     算法通常由某种精确的语言来表述,算法的执行过程就是计算。 2、简述人类计算工具发展所经历的各个阶段。   算筹》算盘》计算尺》机械计算机》电子管计算机》晶体管计算机》集成电路计算机》大规模和超大规模集成电路计算机等多个阶段。 3、简述冯·诺依曼”存储程序“计算机的基本结构和功能。   输入设备:输入数据和程序。   存储器: 记忆数据和程序。   运算器: 完成数据的加工和处理。   控制器: 控制程序执行。   输出设备:输出处理结果。 4、电子计算机发展经历了几个阶段?各个阶段的使用关键器件是什么?   第一代计算机:电子管计算机。ENIAC、EDSAC、IAS。   第二代计算机:晶体管计算机。TRADIC、IBM 7070、IBM 7090、IBM 1401。   第三代计算机:集成电路计算机。IBM 360。   第四代计算机:大规模、超大规模集成电路计算机。 5、简述CPU的功能。 *专门用来完成读取指令和执行指令的部件成为 中央处理器 。 功能:   1.程序控制。   2.操作控制。   3.时间控制。   4.数据运算。   CPU还负责计算机的输入/输出管理、总线控制、中断处理等任务。 6、描述CPU性能的指标有哪些

php浮点数(float)运算中转整形(int)问题

 ̄綄美尐妖づ 提交于 2020-01-07 20:09:34
今天工作中遇见了一个浮点数转整形的问题,特此记录一下,防止以后再次踩坑。 实例: $f = 0.58; var_dump(intval($f * 100.0)); 也许你认为他会输出58,但是实际上他输出的是57. 原因是作为浮点型数据,其精度已经损失了一部分,达不到完全精确。所以永远不要相信浮点数结果精确到了最后一位,也永远不要比较两个浮点数是否相等。 php中浮点数是弱类型,对于整数或者经过运算以后结果是整数的浮点数,php能当作整数对待,但类型还是浮点型不变。但如果经过运算以后不是整数,那php就把结果当作严格的浮点数对待了   在实际的开发中我们可以使用如下逻辑来解决这种境况 intval(round(floatval($value) * 100)); intval(strval($value * 100)); 来源: https://www.cnblogs.com/starfish29/p/12163467.html

python基础,基本数据类型及操作

隐身守侯 提交于 2020-01-07 18:42:53
1.整数类型 python中整数类型无取值范围的限制 就像 pow(x,y),计算x的y次方,由于没有取值范围的限制,所以想算多大就算多大 还可以pow(2,pow(2,15)) 4种进制表示形式 (1)十进制:1010,99,-217 (2)二进制以0b或者0B开头:0b101,-0B101 (3)八进制以0o或者0O表示:0o123,-0O456 (4)十六进制以0x或者0X开头:0x9a,-0x89 两个整数x y相除产生的结果是浮点数结果 2.浮点数类型(与数学中的实数概念一致) 浮点数指带有小数及小数部分的数字 浮点数取值范围和小数精度都存在限制,但对于常规计算可以忽略 浮点数的取值范围大约是-10的308次方到10308次方,精度大约是10的-16次 python浮点数间的运算存在不确定尾数,这不是bug 比如计算 >>0.1+0.2 结果是 >>0.30000000000000004 不确定尾数问题在许多语言中都存在,这涉及到了计算机内部计算原理的问题,在python中使用53位二进制表示小数部分,约是10的-16次方 因为这种关系的存在,所以我们在python中判断的时候 0.1+0.2并不等于0.3 所以我们需要用到一个函数,round(), round(0.1+0.2,1)等于0.3,这就是正确的 round()函数,就是一个四舍五入的函数 round(x,d)