Linux bc 命令簡單學習

1. bash里面能夠實現比較簡單的四則運算

echo $((10*20))

注意是 雙括號+ $ 地址符號.?

2. 但是比較復雜的 可能就難以為繼了 比如不支持精度?

3. 所以這里面需要使用 bc 命令來執行相關的操作.?

man 內容:

usage: bc [options] [file ...]
-h --help print this usage and exit
-i --interactive force interactive mode
-l --mathlib use the predefined math routines
-q --quiet don't print initial banner
-s --standard non-standard bc constructs are errors
-w --warn warn about non-standard bc constructs
-v --version print version information and exit

4. 實現簡單的 測試:

使用 bc -l 進入 計算界面:

比如我輸入的 sqrt(100) 就是計算100 的平方根了

但是我沒找到怎么去立方根

還可以計算 自然對數

比如:

l(10) 表示 以 e為底 10 的對數
e(10) 表示 e 的10次方...

5. 但是這樣計算可能不太方便 也可以使用 管道命令執行相應的操作:

求直接三角形的 第三條邊的長度.

echo "ibase=10,obase=2,254" |bc -l -q

?

6. 或者是可以實現 進制的轉換:

echo "ibase=10;obase=2;254" |bc -l -q

?

?7. 總結語法注意點:

每個參數 使用 分號 分隔 可以使用 管道 也可以不使用管道.?

?

8. 數學函數

   MATH LIBRARYIf bc is invoked with the -l option, a math library is preloaded and the default scale is set to 20.   The math functions will calculate their results to the scale set at the time of their call.  The math library defines the following functions:s (x)  The sine of x, x is in radians.c (x)  The cosine of x, x is in radians.a (x)  The arctangent of x, arctangent returns radians.l (x)  The natural logarithm of x.e (x)  The exponential function of raising e to the value x.j (n,x)The Bessel function of integer order n of x.

so 可以顯示圓周率的 公式是?

echo "scale=10;a(1)*4" |bc -l -q

顯示自然對數的公式

echo "scale=10;e(1)" |bc -l -q

?

轉載于:https://www.cnblogs.com/jinanxiaolaohu/p/10637702.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/278054.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/278054.shtml
英文地址,請注明出處:http://en.pswp.cn/news/278054.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深入理解AbstractQueuedSynchronizer(AQS)

1. AQS簡介 在上一篇文章中我們對lock和AbstractQueuedSynchronizer(AQS)有了初步的認識。在同步組件的實現中,AQS是核心部分,同步組件的實現者通過使用AQS提供的模板方法實現同步組件語義,AQS則實現了對同步狀態的管理,以及對阻塞…

終于收到HacktoberFest的獎品啦

去年10月份給微軟repo提交了5個PR,達成了HacktoberFest 2018,今天終于收到了從美國到澳洲,飄洋過海,姍姍來遲的T-shirt,不過大小正好。算是新年禮物了,哈哈

三、SpringBoot-application.properties配置文件和application.yml配置文件

其實SpringBoot的配置文件有.properties和.yml兩種形式,兩種配置文件的效果類似,只不過是格式不同而已,孩兒們可以根據下面這幾種張截圖,通過對比端口號的配置,以及連接SQLServer數據庫的配置的書寫格式來自己體會兩者…

Teams中的快捷鍵讓溝通協作更加高效

使用Teams的快捷鍵可以幫助我們提高日常溝通協作的效率。 一、快捷鍵分類 1.常規2.導航3.聊天輸入界面4.團隊和會議 1.常規 功能桌面版本快捷鍵WebApp版本快捷鍵搜索CtrlECtrlE顯示命令CtrlSlash (/)CtrlSlash (/)gotoCtrlGCtrlShiftG開始新聊天CtrlNAltN打開設置CtrlComma …

線程間的協作(2)——生產者與消費者模式

2019獨角獸企業重金招聘Python工程師標準>>> 1.何為生產者與消費者 在線程世界里,生產者就是生產數據的線程,消費者就是消費數據的線程。 import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.…

一位面試者提到直接調用vuex中mutations方法

簡述是用this.$store.mutations.xxx(xx)方式調用,因從未見過此種調用方式,回來就搜索了一下,查詢結果如下 首先前文: 獲取 state 的方式有兩種,分別是 this.$store.state.num 這種直接獲取的方式,以及通過 …

從無到有到完善 - Teams抽獎機器人開發歷程

我沒有寫博客有2,3個月了,好幾個朋友來問我怎么不繼續了。實際上這幾個月我受到微軟好友的鼓舞和鼓勵,再加上今年2月1日有幸成為了微軟中國區第一位Teams的MVP,所以決定不再停留于技術demo,而是使用微軟最新的技術開發…

殘差網絡

作用:使得深層網絡可以獲得更好的性能,沒有它,即使加深網絡的層數無法直接獲得性能的提升。 我的理解:1、使得低層的特征表示可以越層傳遞。 2、在反向傳播時LOSS可以直接訓練低層特征。 3、淺層網絡的恒等映射,深層網…

js閉包

閉包(closure)是Javacript語言的一個難點,也是它的特色,很多高級應用都要依靠閉包實現。 一、變量的作用域 要理解閉包,首先必須理解Javascript特殊的變量作用域。 變量的作用域無非就是兩種:全局變量和局部變量。 Javascript語言…

Teams的MessageExtension最新功能:Initiate actions

官方文檔到目前為止對這個initiate action的說明比較簡潔,由于沒有一步步的截圖和說明,從頭到尾看一遍可能還在云里霧里。 我一步步摸索著走了一遍,發現這個initiate action的功能如此強大,不敢獨享,所以寫此博文&…

Java枚舉根據key獲取value

package com.utcip.crm.common.constants; import com.utcip.crm.common.base.process.ScheduleStatusEnum; /** * 合同變更存儲mongodb 狀態值 * author jingfangnan * */ public enum ConstractMongoStatus { NEW(3,"新增"), UPDATE(2,"修改"), D…

Selenium-基礎操作

一、測試代碼 Test public void test() { WebDriver driver new FirefoxDriver(); // 打開當前包中的index頁面 driver.get("file:///D:/%E8%B5%B5%E6%AC%A2/Selenium/Selenium/src/com/html/index.html"); WaitSeconds(1000); // 清除用戶輸入 driver.findElement(…

開發針對特殊租戶的Teams機器人

有些朋友問到,如果想要開發一個bot針對于Teams的某些租戶,如何做?實際上微軟的Teams的SDK早就提供了類似的功能。 如果你使用的是Javascript/Node.JS開發,使用session.message.sourceEvent.tenant.id 就可以知道當前消息來自于哪…

行業看點 | 英特爾成功開發超導量子計算芯片 推動產業加速發展

量子計算將會成為下一次技術革命的核心,你可能認為它還很遙遠,實際上量子計算會比預料的來得早。近期,英特爾在量子芯片方面取得突破,讓量子計算朝著現實前進了一大步。 繼IBM公司發布了自主量子處理器,谷歌著手研究基…

Teams App抽獎機器人 - 基礎架構

今天我們來聊一下,一個Teams app的infrastructure,我在考慮LuckyDraw的主要出于這么幾個出發點: 可管理性。因為這是一個個人產品,以后維護工作也只有我一個人,所以我希望整個infrastructure簡單、易管理,不…

Teams Bot的ServiceLevel測試

每一個Teams bot實際上就是一個web api服務,這個服務通過Bot Framework和Teams進行通訊,所以對于Teams app的測試就是對于一個api service的測試。 軟件行業發展到如今,測試技術已經趨于成熟。單元測試,冒煙測試,整合…

BZOJ1016:[JSOI2008]最小生成樹計數——題解

https://www.lydsy.com/JudgeOnline/problem.php?id1016 現在給出了一個簡單無向加權圖。你不滿足于求出這個圖的最小生成樹,而希望知道這個圖中有多少個不同的最小生成樹。(如果兩顆最小生成樹中至少有一條邊不同,則這兩個最小生成樹就是不…

如何做Teams Bot的測試覆蓋

在我昨天的文章中介紹了如果對Teams bot做service level的測試,那到底要寫多少的測試代碼才算夠?如何才算測試到位了?這個時候我們就需要用”測試覆蓋率”來衡量,雖然覆蓋率高并不一定代表著就可以高枕無憂的以為我們軟件質量高了…

Spring Boot開發MongoDB應用實踐

本文繼續上一篇定時任務中提到的郵件服務,簡單講解Spring Boot中如何使用MongoDB進行應用開發。 上文中提到的這個簡易郵件系統大致設計思路如下: 1、發送郵件支持同步和異步發送兩種 2、郵件使用MongDB進行持久化保存 3、異步發送,直接將郵件…

Teams Bot如何做全球化

Office365在全球有大量的用戶,可以說是擁有最多用戶的商業SaaS平臺。Teams最近在發展迅猛,有1300萬日活用戶,已經超越了Slack。? Microsoft Teams overtakes Slack with 13 million daily users 我在設計Teams LuckyDraw bot的時候就希望我…