导航:首页 > 操作系统 > linux数学计算

linux数学计算

发布时间:2025-02-24 17:49:18

1. 使用 linux 命令 expr/bc 进行数学运算

在Linux系统中,用于数学运算的命令主要有expr和bc。

expr命令,全称为"evaluate expressions",主要用于整数计算和字符串处理,例如计算字符串长度、字符串比较、字符串匹配、字符串提取等。需要注意的是,expr仅支持整数,若需进行浮点数运算,应使用bc命令。

bc命令,全称为"Basic Calculator",是一款强大的浮点数和高精度计算工具,适用于处理各种数学运算,包括加减乘除、指数运算、取模、求平方根等。其输入和输出方式类似于C语言,便于执行计算。

基本用法包括直接在终端中输入表达式并按回车键获得结果。对于浮点数运算,可以通过设置"scale"变量来控制小数点后的位数。bc还支持使用变量和函数进行更复杂的计算,例如定义函数来计算圆的面积。

在进行高级运算时,bc命令能够执行浮点运算和一些高级函数,如设定小数精度、进行进制转换及计算平方和平方根等。

expr与bc的主要区别在于,expr仅支持整数运算,而bc支持浮点数运算及整数运算,功能更加强大。

2. Linux 閲岄溃锻戒护琛屾墦寮璁$畻鍣 镐庝箞杈揿叆




linux锻戒护琛璁$畻鍣












璇︾粏鏂囨。璇 man bc

鍦╳indows涓嬶纴澶у堕兘鐭ラ亾鐩存帴杩愯宑alc锛(c:windowssystem32calc.exe),鍙浠ユ墦寮璁$畻鍣ㄣ

娉锛

calculate vt.&vi.
璁$畻锛沜alculator n. 璁$畻鍣ㄣ俢alc灏辨槸杩欎釜璁$畻镄勭亩鍐欍
Ca鍦ㄥ寲瀛︿腑鏄浠h〃阍椤厓绱锛宑alcium
阍(20鍙峰厓绱,绗﹀彿Ca)銆备袱钥呮湁浠涔堣仈绯诲憿锛
calculate 𨱒ヨ嚜calculus,铡熶箟鏄锅氱畻链杩愮畻镄勫皬鐭冲瓙锛屾槸calx(鐭崇伆鐭筹级镄勫皬绉般


闾d箞鍦linux绯荤粺涓嬶纴链夋棤涓巜indows涓媍alc.exe绫讳技镄勮$畻鍣ㄥ憿锛


涓嬮溃镐荤粨linux涓嬬殑涓変釜锻戒护锛屾潵浠嬬粛涓涓媗inux涓嬬殑璁$畻鏂规硶锛


1锛塨c
bc鍦ㄩ粯璁ょ殑𨱍呭喌涓嬫槸涓浜や簰寮忕殑鎸 浠ゃ傚湪bc宸ヤ綔鐜澧冧笅锛屽彲浠ヤ娇鐢ㄤ互涓嬭$畻绗﹀彿锛
+ 锷犳硶
- 鍑忔硶
* 涔樻硶
/ 闄ゆ硶
^ 鎸囨暟
% 浣欐暟
濡傦细
#
bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation,
Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
3+6
<=锷犳硶
9
4+2*3<=锷犳硶銆佷箻娉
10
(4+2)*3<=锷犳硶銆佷箻娉曪纸浼桦厛锛
18
4*6/8
<=涔樻硶銆侀櫎娉
3
10^3
<=鎸囨暟
1000
18%5<=浣欐暟

3+4;5*2;5^2;18/4
<=涓琛岃緭鍏ュ氢釜璁$畻锛岀敤;鐩搁殧銆
7
10
25
4
quit <=阃鍑

# bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation,
Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
scale=3
<=璁惧皬鏁颁綅
1/3
.333
quit

浠ヤ笂鏄浜や簰镄勮$畻锛岄偅鍒颁篃鍙浠 涓嶈繘琛屼氦浜掕岀洿鎺ヨ$畻鍑虹粨鏋溿

A.鐢╡cho鍜寍娉曪纴濡傦细

# echo "(6+3)*2" |bc
18

# echo 15/4 |bc
3

# echo "scale=2;15/4"
|bc
3.75

# echo "3+4;5*2;5^2;18/4"
|bc
7
10
25
4

鍙﹀栵纴
bc闄や简scale𨱒ヨ惧畾灏忔暟浣崭箣澶栵纴杩樻湁ibase鍜宱base𨱒ュ叾绠姗桦畠杩涘埗镄勮繍绠椼

濡傦细

//灏16杩涘埗镄𪞝7杈揿嚭涓10杩涘埗, 娉ㄦ剰锛岃嫳鏂囧彧鑳藉ぇ鍐

# echo "ibase=16;A7"
|bc
167

//灏2杩涘埗镄11111111杞鎴10杩涘埗

# echo "ibase=2;11111111"
|bc
255

//杈揿叆涓16杩涘埗锛岃緭鍑轰负2杩涘埗

# echo "ibase=16;obase=2;B5-A4"
|bc
10001

瀵逛簬bc杩樻湁琛ュ厖锛屽湪bc --help涓杩桦彲浠ュ彂鐜帮细bc钖庡彲浠ユ帴鏂囦欢钖嶃傚傦细

# more calc.txt
3+2
4+5
8*2
10/4
# bc calc.txt
5
9
16
2


2)expr

expr锻戒护鍙涓嶅厜鑳借$畻锷犲噺涔橀櫎鍝︼纴杩樻湁寰埚琛ㄨ揪寮锛岄兘鍙浠ヨ$畻鍑虹粨鏋滐纴涓嶈繃链変竴镣归渶瑕佹敞镒忥纴鍦ㄨ$畻锷犲噺涔橀櫎镞讹纴涓嶈佸缮浜嗕娇鐢ㄧ┖镙煎拰杞涔夈备笅
闱㈢洿鎺ョ敤瀹炰緥𨱒ヤ粙缁崭竴涓媏xpr镄勮繍绠楋纴濡傦细

# expr 6 +
3
锛堟湁绌烘牸锛
9

# expr2 *
3
锛堟湁杞涔夌﹀拹鍜愬仛鍙凤级
6

# expr 14 % 9
5

# a=3
# expr
$a+5
锛堟棤绌烘牸锛
3+5
# expr $a +
5
锛埚彉閲忥纴链夌┖镙硷级
8

#
a=`expr 4 + 2`
echo $a
6
# expr $a + 3
9

鍙﹀栵纴expr瀵逛簬瀛椾覆镄勬搷浣滐纸璁$畻锛変篃鏄寰堟柟渚胯琛$殑锛屽傦细

//瀛椾覆闀垮害
#expr length
"yanggang.cublog.cn"
21

//浠庝綅缃澶勬姄鍙栧瓧涓
# expr substr "yanggang.cublog.cn"
1 11

yanggang


//瀛椾覆寮濮嫔

# expr index
"yanggang.cublog.cn" cu
13

3)dc

鐢╠c𨱒ヨ繘琛岃$畻镄勪汉鍙浠ヤ笉澶氾纴锲犱负dc涓巄c鐩告瘆瑕佸嶆潅锛屼絾鏄鍦ㄨ繘琛岀亩鍗旷殑璁″垝镞讹纴鏄宸涓嶅氱殑锛屼笉绠楅毦銆俤c涓哄帇镙堟搷浣滐纴榛樿や篃鏄浜や簰镄勶纴浣
涔熷彲浠ョ敤echo鍜寍𨱒ラ厤钖堟墦绠椼

濡傦细

# dc
3
2+

p
5
4*
p
20

quit

# echo 3 2+ 4* p |dc
20

4)echo

echo鐢ㄦ潵杩涜屽洖鏄撅纴鏄锻ㄧ煡镄勪簨銆备笂闱涔熼厤钖坆c𨱒ヨ繘琛岃$畻銆傚叾瀹瀍cho涔熷彲浠ュ崟镫杩涜岀亩鍗旷殑璁$畻锛屽傦细

# echo $((3+5))
8
# echo $(((3+5)*2))
16

echo杩桦彲浠ヨ繘琛屽彉閲忕殑璁$畻锛屽傦细

# a=10
# b=5
# echo $(($a+$b))
15
# echo $a+$b
10+5
# echo $a+$b |bc
15

//璁$畻鍓嶅ぉ镄勬棩链

# echo `date
+%Y%m%d`
20090813
# echo `date +%Y%m%d`-2
20090813-2
# echo `date +%Y%m%d`-2
|bc
20090811

5)AWK

awk鍦ㄥ勭悊鏂囦欢镄勬椂锛屽彲浠ヨ繘琛岃繍绠楋纴闾e綋铹朵篃鍙浠ュ崟鍗旷敤𨱒ヨ$畻浜嗭纴濡傦细

# awk 'BEGIN{a=3+2;print
a}'
5
# awk 'BEGIN{a=(3+2)*2;print
a}'
10

Awk 鏀鎸佸父瑙佺殑杩愮畻绗锛 濡 + 锛埚姞锛夛纴- 锛埚噺锛夛纴 * 锛堜箻锛夛纴 / 锛堥櫎锛夛纴 ^ 鎴 ** 锛涔樻柟锛夛纴 % 锛埚彇妯★级
绛夌瓑銆 姝ゅ栵纴 awk 涔熸彁渚涗简涓浜涘父鐢ㄧ殑鏁板﹀嚱鏁, 姣斿 sin(x), cos(x), exp(x), log(x),
sqrt(x), rand()銆 浣跨敤杩欎簺杩愮畻绗﹀拰鍑芥暟鍙浠ョ洿鎺ヨ繘琛屼竴浜涚亩鍗旷殑杩愮畻锛

# echo | awk '{print
8+6}'

14

# echo | awk '{print
8/6}'

1.33333

# echo | awk '{print
9%5}'

4



阅读全文

与linux数学计算相关的资料

热点内容
plc编程考试试题及答案 浏览:719
android手机摇一摇 浏览:397
软件怎么挂到云服务器地址 浏览:594
程序员驻场担任现场负责人 浏览:947
软件下载解压安装系统 浏览:877
使用别人网站的模板源码违法吗 浏览:3
php网站用什么服务器 浏览:185
大企业用什么邮箱服务器 浏览:643
最新追剧达人影视源码 浏览:340
电脑u盘加密时很卡 浏览:902
三阶行列式递归式算法 浏览:611
视频制作pr是什么app 浏览:991
服务器被ddos攻击是什么意思 浏览:428
元经Pdf 浏览:576
怎么访问文件共享服务器 浏览:817
怎么评价scut服务器 浏览:818
怎么区分物理服务器 浏览:740
安卓开发板能干什么 浏览:361
程序员学五笔 浏览:317
linux编程下载文件 浏览:6