前言
相信大家在学习C++时,应该都有做过求绝对值的题目,今天我给大家介绍几种求绝对值的方法
一、使用函数
在C++的数据库里有专门的函数,在这里我给大家科普一些常用的函数。
函数名 | 格式 | 功能说明 | 例子 |
绝对值函数 | abs(x) | 求一个数 x 的绝对值 | abs(-5)=5 |
自然数指数函数 | exp(x) | 求实数 x 的自然指数 | exp(1)=2.718282 |
向下取整 | floor(x) | 求不大于实数 x 的最大整数 | floor(3.14)=3 |
向上取整 | ceil(x) | 求不小于实数 x 的最小整数 | ceil(3.14)=4 |
自然对数函数 | log(x) | 求实数 x 的自然数对数 | log(1)=0 |
指数函数 | pow(x,y) | 计算 ,结果为双精实数 | pow(2,3)=8 |
随机函数 | rand( ) | 产生 0 到 RAND-MAX之间的随机整数 | |
平方根值函数 | sqrt(x) | 求实数 x 的平方根 | sqrt(25)=5 |
那么,由上表得知,可以使用abs()函数。
代码如下:
#include<bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; cout<<abs(n); return 0; }
二、使用平方根
这是在初中课本里就有讲到,一个实数的平方再加根号就等于这个数的绝对值。
代码实现如下:
#include<bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; n*=n; cout<<sqrt(n); return 0; }
三、根据它的正负关系
这也是初中课本里有讲到的,一个数如果是负数。那么它减它本身等于0,那么再减它本身,那不就是它的相反数了么,所以代码如下:
#include<bits/stdc++.h> using namespace std; int main(){ int n; cin>>n; if(n<0){ n=n-n-n; } cout<<n; return 0; }
附:c++语言输出绝对值
描述
输入一个浮点数,输出这个浮点数的绝对值。
输入
输入一个浮点数,其绝对值不超过10000。
输出
输出这个浮点数的绝对值,保留到小数点后两位。
样例输入
-3.14
样例输出
3.14
源代码
#include<iostream> #include<iomanip> using namespace std; int main() { double n,a; cin>>n; a=-n; if(-10000<=n<=10000) { if(n<0) cout<<fixed<<setprecision(2)<<a<<endl; else cout<<fixed<<setprecision(2)<<n<<endl; } return 0; }