round

python 中解决round函数小bug的函数

寵の児 提交于 2019-12-21 13:35:42
我在用 python的 round函数中发现它在有些情况下实际上并没有执行四舍五入,而是五舍六入。 例如: round(0.1555,3) Out[4]: 0.155 round(0.955,2) Out[14]: 0.95 而如果小数比需要保留的位数多,则不会有类似的问题,例如: round(0.1555,2) Out[10]: 0.16 这个明显是有问题的。为此我自己写了一个小函数来解决round函数的这个问题。 这个函数的思路很简单,如果输入的小数比要保留的位数多一位并且最后一位是5,那么就+1让它变成6。 用新函数的运行结果如下: furound(0.1555,3) Out[11]: 0.156 furound(0.955,2) Out[15]: 0.96 问题得到解决。 如果大家有更好的方法,欢迎讨论 来源: CSDN 作者: 董Eddie 链接: https://blog.csdn.net/weixin_43192251/article/details/103642668

vue项目中使用echarts地图

爷,独闯天下 提交于 2019-12-21 01:50:58
第一步、npm install echarts 第二部、在main.js中引入 第三步、创建组件,并且用this.$echarts.init初始化echarts <template> <div class="chinaecharts"> <div id="mapChart" ref="mapChart" ></div> </div> </template> <script> export default { name: 'ChinaEcharts', methods: { mapFn(){ // 基于准备好的dom,初始化echarts实例 // var mapChart = this.$echarts.init(this.$refs.mapChart); var mapChart = this.$echarts.init(document.getElementById('mapChart')); mapChart.setOption({ backgroundColor: '', //背景颜色 title: { text: '中国', subtext: 'China', color: '#fff', // sublink: 'http://www.pm25.in', x:'center', }, //是视觉映射组件,用于进行『视觉编码』,也就是将数据映射到视觉元素(视觉通道)。

1128:图像模糊处理(round函数(四舍五入化整))

泪湿孤枕 提交于 2019-12-14 19:57:27
【题目描述】 给定nn行mm列的图像各像素点的灰度值,要求用如下方法对其进行模糊化处理: 1.四周最外侧的像素点灰度值不变; 2.中间各像素点新灰度值为该像素点及其上下左右相邻四个像素点原灰度值的平均(舍入到最接近的整数)。 【输入】 第一行包含两个整数nn和mm,表示图像包含像素点的行数和列数。1≤n≤100,1≤m≤1001≤n≤100,1≤m≤100。 接下来nn行,每行mm个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素均在0∼2550∼255之间。 【输出】 nn行,每行mm个整数,为模糊处理后的图像。相邻两个整数之间用单个空格隔开。 【输入样例】 4 5 100 0 100 0 50 50 100 200 0 0 50 50 100 100 200 100 100 50 50 100 【输出样例】 100 0 100 0 50 50 80 100 60 0 50 80 100 90 200 100 100 50 50 100 #include <iostream> #include <cmath> using namespace std; int i,j,k; #define A 100+5 int main() { int a[A][A]; double b[A][A]; int m,n; cin>>n>>m; for(i=1;i<=n;i+

PHP关于数据的舍入归类:round、ceil、floor、number_format

怎甘沉沦 提交于 2019-12-10 03:36:26
下面是关于数字转化的几种方法: round -- 对浮点数进行四舍五入 例子: <?php echo round ( 3.4 ); // 3 echo round ( 3.6 ); // 4 echo round ( 3.6 , 0 ); // 4 echo round ( 1.95583 , 2 ); // 1.96 echo round ( 1241757 , - 3 ); // 1242000 echo round ( 5.055 , 2 ); // 5.06 ?> ceil -- 进一法取整 例子: <?php echo ceil ( 4.3 ); // 5 echo ceil ( 9.999 ); // 10 ?> floor -- 舍去法取整,跟ceil刚刚相反 例子: <?php echo floor ( 4.3 ); // 4 echo floor ( 9.999 ); // 9 ?> number_format -- 格式化数字为千分位 <?php $number = 1234; // english notation (default) $english_format_number = number_format($number); echo "First:".$english_format_number."<br />"; // French notation

php取整函数ceil,floor,round,intval函数的区别

夙愿已清 提交于 2019-12-09 20:37:18
开发过程中,遇到数据处理取整的时候,你会用哪个呢,小涛来介绍一下:PHP取整函数有ceil,floor,round,intval,下面详细介绍一下: 1、ceil — 进一法取整 说明 float ceil ( float $value ) 返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。 ceil() 例子 <?php echo ceil(4.3); // 5 echo ceil(9.999); // 10 ?> 2、floor — 舍去法取整 说明 float floor ( float $value ) 返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。 floor() 例子 <?php echo floor(4.3); // 4 echo floor(9.999); // 9 ?> 3、round — 对浮点数进行四舍五入 说明 float round ( float $val [, int $precision ] ) 返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果

将字符串转换为整数?

廉价感情. 提交于 2019-12-06 20:21:24
如何在JavaScript中将字符串转换为整数? #1楼 尝试parseInt。 var number = parseInt("10", 10); //number will have value of 10. #2楼 尝试parseInt函数: var number = parseInt("10"); 但有一个问题。 如果尝试使用parseInt函数转换“ 010”,它将检测为八进制数字,并返回数字8。因此,您需要指定一个基数(从2到36)。 在这种情况下,以10为底。 parseInt(string, radix) 例: var result = parseInt("010", 10) == 10; // Returns true var result = parseInt("010") == 10; // Returns false 请注意, parseInt 在解析任何有效内容后会忽略错误数据。 该GUID将解析为51: var result = parseInt('51e3daf6-b521-446a-9f5b-a1bb4d8bac36', 10) == 51; // Returns true #3楼 最简单的方法是使用本机 Number 函数: var x = Number("1000") 如果这对您不起作用,则有 parseInt , 一元plus ,

Codeforces Round #601 (Div. 2) B Fridge Lockers

心不动则不痛 提交于 2019-12-05 15:43:23
//题目要求的是每一个点最少要有两条边连接,所以可以先构成一个环。然后再把剩余的最短的边连接起来 #include<iostream> #include<algorithm> using namespace std ; const int N=100010; int n,m; struct edge { int num; int w; } a[N]; int T; bool cmp(edge a,edge b) { return a.w<b.w; } void solve() { int ans=0; for(int i=1; i<=n; i++) { ans+=2*a[i].w; } ans+=(m-n)*(a[1].w+a[2].w); cout<<ans<<endl; for(int i=1; i<n; i++) cout<<i<<" "<<i+1<<endl; cout<<n<<" "<<"1"<<endl; for(int i=1; i<=m-n; i++) cout<<a[1].num<<" "<<a[2].num<<endl; } int main() { cin>>T; while(T--) { cin>>n>>m; for(int i=1; i<=n; i++) { cin>>a[i].w; a[i].num=i; } if(n<=2||m<n) { cout<<

Codeforces Round #600 (Div. 2) E .Antenna Coverage

会有一股神秘感。 提交于 2019-12-05 15:16:39
#include<iostream> #include<stdio.h> using namespace std; typedef long long ll; const int N=1e5+10; int dp[N]; int x[85],r[85]; int main() { int n,m; scanf("%d%d",&n,&m); for(int i=1; i<=n; ++i) { scanf("%d%d",x+i,r+i); } dp[m+1]=0; for(int i=m; i>=1; --i) { int pos=i; dp[i]=1+dp[i+1];//从右往左 for(int j=1; j<=n; ++j) { int _x=x[j],_r=r[j]; if(_x>=pos) {//如果在某个天线的左边 if(_x-_r<=pos) {//如果在天线的覆盖范围之内 dp[i]=min(dp[i],dp[min(m+1,_x+_r+1)]);//就不用花费,往前面倒腾,而且不能出界 } else {//如果不在覆盖范围之内 dp[i]=min(dp[i],_x-_r-pos+dp[min(m+1,2*_x-pos+1)]);//扩展距离的费用 + 原本需要花费的钱 //_x-(pos-x) 也是往前倒腾 因为往左扩展的同时也会往右扩展 //而此时左边还没有赋值