“Talk is cheap. Show me the code.”
― Linus Torvalds

摘要:
直到, 在學習 R 語言的過程, 才發現有 Markdown 這種文件,
他的語法很單純, 卻可以快速呈現網頁部落格等文件的畫面, 等於是一種簡化的網頁文件, 在近10年內逐漸受到喜愛.
(用簡單的語法封裝繁雜的網頁語法)


Markdown 優缺點

優點:

可讀性高
比HTML寫起來簡潔
好理解,快速撰寫
支援HTML寫法
多數版本 支援 Latex 編輯數學符號 語法

缺點:

功能較HTML少,有些方法還是需要使用HTML標籤(tag)來撰寫

Ref: Coding起來- 程式開發不可忽略的語言- Markdown 教學 link


用免費的電腦資源協助數學的教學, 學習與探索


文章目录

  • 用免費的電腦資源協助數學的教學, 學習與探索
    • 作者介紹的解決方案
      • 1. 以 markdown 的格式編輯製作 跨平台、跨版本的筆記、講義、部落格等文件 (數學的講義, 報告, 作業之協助)
      • 2. 數學圖形的繪製之軟體:
      • 3. 數學的計算與檢驗:
      • 4 數學的探索之協助
    • 數學的講義, 報告或作業之協助
      • .md 檔的編輯方法.
        • 線上編輯器
          • MdEditor
          • Markdown Editor
          • Markdown Live preview
          • Chrome之插件 Markdown 編輯器: Markdown Editor for Chrome 等等
        • 本地安裝之編輯器
          • Typora
          • VScode
          • RStudio
      • 數學圖形的繪製之協助
      • 數學符號的打印之協助
        • 在Markdown可以直接使用 Latex 的語法編輯數學式子
        • 初學者 可以利用 GeoGebra的插入文字對話框裏, 有Latex的簡便用法
        • Latex 可以設定颜色
      • 流程圖的打印可以使用 Markdown
    • 數學的計算與檢驗之協助
      • 用 GeoGebra 檢驗觀察幾何
      • 用 GeoGebra 或 Python 做簡單的驗證:
    • 數學的探索之協助
      • 數學探索主題之搜尋
      • 程式語言或動畫或兩者結合呈現數學的探索
        • 以 GeoGebra 探索
          • 以 GeoGebra還原 網路上講解消失的方塊魔術拼圖之原理: 帕利高畢氏切割
          • 以 GeoGebra 探索 廣義畢氏定理
          • 以 GeoGebra 探索幾何分割
          • 以 GeoGebra 探索碎形
          • 以 GeoGebra 探索擺線
        • 以 Python 程式結合 turtle 海龜模組的功能, 探索
  • 總 Ref

講者: 國立高雄師範大學數學系 賴鵬仁教授

主辦單位: 高雄市復華中學教師研習營

時間:110.05.12(日)下午13:50~15:50

對象:中學教師


講題: 用免費的電腦資源協助數學的學習與探索

講者: 國立高雄師範大學數學系 賴鵬仁教授

主辦單位: 國立中山大學應用數學系 高中數學人才培育班

時間:110.03.14(日)下午1:30~3:30

地點:中山大學理學院一樓國際會議廳

對象:國中~高中二年級資優班學生(約110人)

作者介紹的解決方案

這次講題, 作者介紹的 用免費的電腦資源協助數學 的解決方案, 並不是最方便最好的, 只是許多可行的方案中的一種,

1. 以 markdown 的格式編輯製作 跨平台、跨版本的筆記、講義、部落格等文件 (數學的講義, 報告, 作業之協助)

是建議以 markdown 的格式編寫:
markdown 文件, 副檔名是 .md 檔, , 其實是純文字檔, 可以輕易轉成網頁 .html.pdf 的檔案, 可以想成是用簡單的指令語法, 先在純文字檔寫, 再用可以編譯 .md 檔的免費軟體例如 RStudio、 VS code、Typora 等, 讓文件呈現出網頁部落格等文件的畫面, 過程跟寫一份 C 語言的程式或是一份 LaTex 文件類似.

markdown 的格式不單可以呈現一般文章, 也適合用在簡報的呈現,

markdown 最讓本人喜愛的兩點是, 因為我的講義需要使用大量的數學符號與數學圖形,

  1. markdown 可以插輕鬆入圖檔, 動畫檔 .gif 也可以, 也可以畫流程圖、心智圖等, 也可以插入程式碼.
  2. markdown 可以插輕鬆入 Latex 之指令 (Latex 或 Tex 是專業編輯 數理化公式或科學算式等 之程式語言)
    甚至在有些編輯器下(RStudio), 不單可以呈現 markdown 的完成文件, 也可以即時執行 Python 或 R 程式碼, 將執行結果同步呈現在文字之間 (類似在 Jupter Notebook 上寫一份講義並同步執行 Python 程式碼, 將 Python 執行結果同步呈現在文字之間)
    可以編譯 .md 檔的免費軟體例如:
  • RStudio 就可以在文字間插入 R 的 codes 立即執行程式碼, 呈現結果在文字間、
  • JupterNotebook 則可以將文件匯出轉存為 .md 檔,
  • VScode 也支持 markdown 檔案編輯並即時呈現效果 (同步 預覽preview 文檔跑出的結果), 等等,
  • 在 Windows作業系統下, 可以使用免費的 Typora 來編輯並即時呈現效果.

2. 數學圖形的繪製之軟體:

直覺的滑鼠拖動方式, 可以使用 GeoGebra, 需要更精確的程式操控可以使用 Python 的 Matplotlib.pyplot 程式庫, 或 R 語言的 plot()函數, 等.

3. 數學的計算與檢驗:

基礎的部分(微積分含以下)仍然可以使用 GeoGebra, 需要更進階的計算可以使用 Python 的 NumPy, SciPy, SymPy 等程式庫, 或 R 語言, 等.

4 數學的探索之協助

  • 探索題材之尋找, 可以多上網找適當資源, 有很多優質的數學網站或 YouTube站, 多半是英文, 可以使用自動翻譯, 仍可以抓到7成8成的意思.
  • 已經有某個想法時, 則可以使用 GeoGebra 或 Python+NumPy+SciPy 等協助深入探討.

數學的講義, 報告或作業之協助

在台灣108課綱開始實行之後, 莘莘學子在自己的簡報與作業的呈現上, 必須多加用心了.

一般我們在簡報或作業, 都習慣用 word 與 powerpoint 去製作.

但是以作者自己的經驗, 多年來一直遇到軟體舊版本寫的講義與軟體新板本不相容的問題, 例如之前用 Office2000製作的, 用 Office 2010 即使能打開, 也出現許多問題, 可能有些效果無法呈現, 或是數學符號變成無法修改, 收到的公文word檔如果是用 Office2010 製作的, 我的電腦要是還沒更新, 例如仍是用 Office2000, 則情形常常更嚴重, 有時會連打開都打不開, 尤其許多問題都是因為我的講義需要使用大量的數學符號與數學圖形,在 word 或 powerpoint 上呈現常常遇到諸多問題,常常在某個版本已經摸索到穩定可以順利撰寫呈現,換新的 word 版本, 我又要手忙腳亂一陣子.

就這樣用了許多年, 心理面積壓著, 是否該找尋某種軟體可以製作出跨平台、跨版本的筆記文件、落格文件、投影片等, 製作一次, 就可以較持久的使用, 不用再擔心版本的問題, 或者是擔心用手機、或平板可能就打不開的問題.

這也是 Google 推出 Google雲端文件軟體, 微軟推出 Office360 等等, 都是因應大家這個長期積壓在心底的訴求.

我原先第一個想到的跨平台、跨版本的文件解法就是, 乾脆用網頁呈現自己的講義、演講投影片等, 副檔名是 .html,

因為網頁是跨平台, 只要有瀏覽器的地方, 不管是桌機、筆電、手機、平板,智慧型電視機等等, 通通都可以看到, 不需要先安裝適當的軟體

(例如需要 有安裝word, 才能打開看到 word 文件, Excell 文件, 則需要有安裝 Excel, 如果要看到 Matlab 的文件, 就需要先裝 Matlab 等等).
但是在學習用網頁語法寫講義的過程, 就碰到需要花大量時間學習, 只能將這個想法擱置.

也想到我的博士論文是整本用 Tex 撰寫, 嘗試用 Latex 重寫原有用 word 打的講義, 但是 Latex在插入圖片跟使用中文等方面, 在遇到問題時, 必須很熟練的人才能排除問題, 故這個方案也在投入很多時間之後決定暫時放棄.

中間也嘗試學習使用 Google 雲端文件軟體, 但是就我個人的感覺, 使用方式並不直覺, 就暫停這方面的學習.

直到, 在學習 R 語言的過程, 才發現有 Markdown 這種文件,
他的語法很單純, 卻可以快速呈現網頁部落格等文件的畫面, 等於是一種簡化的網頁文件, 在近10年內逐漸受到喜愛.
(用簡單的語法封裝繁雜的網頁語法)

尤其在有名的開放原始碼分享網站 GitHub 上, 是指定用戶以 markdown 來撰寫該網站上的網頁內容. 一般稱其為標記語言的一種, 屬於較輕量級的標記語言, 較易學易上手, 故我們接下來要跟大家介紹 .md 檔的編輯方法.


.md 檔的編輯方法.

.md 檔的編輯方法非常多樣, 許多方法都是需要連上適當網站, 在他們的雲端環境下編輯.
如果想離線在自己 Windows 下, 可以安裝 Typora, 但是 Typora 的基本版免費版, 無法同時看原始檔, 與編譯出的畫面(就是所謂的預覽), 只可以看到編譯出的畫面
同時看原始檔, 與預覽, 這個功能, RStudio 或 VScode都有,
Typora 好處是, 很單純, 就是專心編輯 .md 檔,
不像 RStudio 與 VScode 功能太豐富了, 對初學者, 反而是一種負擔.

故以下

  • 對於國高中等初學者, 推薦使用 Typora(但基本版無法執行Latex語法), 或線上編輯器MdEditor, Markdown Editor (此兩者皆可執行Latex語法),等
  • 對於經常使用程式語言的人, 可以使用 VScode
  • 對於熟悉資料分析與 R 的人, 推薦使用 RStudio

線上編輯器

MdEditor

可以執行 編輯數學之Latex語法,
注意: 每個Markdown線上編輯器對編輯數學之Latex或 Tex 語法會有些微差異!
他的 $$E=mc^2$$ E=mc2E=mc^2E=mc2, 是單行, 並不會自動獨立一行,
但是在多數Markdown線上編輯器, 用左右雙 $字號 包住 $$ ,,, $$ 則會自動獨立一行!
他這用左右單 $字號 包住 $E=mc^2$ 則無法執行成 Latex效果.
他獨立多行的語法則是:

```math
\displaystyle
x_2\\
x_3

x2x3x_2\\ x_3x2​x3​

Markdown Editor

可以編輯數學之Latex或 Tex 語法, 單行或多行之Latex語法與MdEditor 類似, 但是無法存檔, 可以複製貼上到自己的本地端編輯器即可

網址 https://markdown-editor.github.io/
link

Markdown Live preview

無法編譯呈現Latex語法數學效果.
https://markdownlivepreview.com/
link

Chrome之插件 Markdown 編輯器: Markdown Editor for Chrome 等等

安裝之後, 點開插件就可以使用, 但是基本版執行Latex語法似乎無法編譯呈現數學效果.

優點是列印為 pdf 的按鈕就在上方, 可以把編輯後的畫面存為 .pdf, 如果是 VSCodes, 或是其他線上的程式, 或是 Typora等, 通常都找不到可以列印為 pdf 的按鈕.

本地安裝之編輯器

.md 之軟體 畫面效果 是否免費
Typora 可以切換原始碼或編譯之後預覽的畫面, 無法同時呈現, 基本版執行Latex語法似乎有問題 需付費
VScode 同時有原始碼與預覽視窗 基本版免費
RStudio 同時有原始碼與預覽視窗 基本版免費
Typora

讀者可以上網搜尋關鍵字 Typora, 下載安裝, 都是一鍵安裝, 非常簡單,
輸入時, 類似 word 的畫面, 可以選擇使用類似 word 的選單, 例如 段落/表格/插入表格, 等等, 對於不熟悉 markdown語法的人, 這是一個方便

也可以直接輸入 markdown 的指令, 按下 enter 之後, 畫面會呈現指令編譯後之效果, 會看不到原來的指令, 可以點選下方選擇切換狀態, 換成只呈現原始碼, 無法同時呈現.

這個功能讓我覺得不太習慣, 故我會同步用另一個可以編輯純文字檔的免費軟體(例如 小作家, WordPad, Sublime Text 等) 打開同一個檔案, 在這個另一個視窗查看原始碼是否正確.

VScode

VScode 是微軟開放原始碼的軟體, 可以編譯很多語言, 例如 C, C++, C#, Java, Python, 等等, .md 檔也可以, 同樣也是一鍵安裝, 基本版免費的軟體,

要注意的是, 用 VScode打開 .md 檔時, 不會自動有預覽的視窗, 必須在編輯視窗之右上方一個小小的預覽符號按鈕, 點下去, 才會把視窗分割成左右兩半, 右邊是預覽的畫面, 相當好用,

網路上的文章會建議安裝插件, 例如 Markdown All in One, Markdown Preview Github Styling 等等, 詳細的點選方法, 可以參考各文章, 一開始不必涉入太多細節, 先挑簡單的介紹照著做.

Ref:

  1. [Markdown] 使用vscode开始Markdown写作之旅, https://zhuanlan.zhihu.com/p/56943330
  2. Day 20: 使用 VS Code 來開發 Markdown, https://ithelp.ithome.com.tw/articles/10225442
RStudio

RStudio 主要是執行 R 的軟體, 是開放原始碼的軟體, 知名的統計與資料分析軟體, 可以編譯 R, Python, 等等, .md 檔也可以, 同樣也是一鍵安裝
可以編輯與預覽 .md 或是 .Rmd 檔, .Rmd 檔可以即時執行 R codes 將結果(例如統計圖表)呈現文字之間

a <- c(1,2,3)
a

在RStudio, 可以點選開新檔案選 .md 格式, 打入適當內容之後, 按下 緊貼編輯區正上方的preview鍵, 可以選輸出為 word 的畫面, 或是 .html 等的畫面, 以下是輸出 word 的畫面

以下選輸出為 .html 的畫面

如果希望在 markdown文檔 內, 可以即時呈現 R程式執行結果, 則需要新增或打開一個 R markdown 文件( .Rmd 檔), 編譯時, 是使用 knit 鍵, 詳細請參考 台北大學吳漢銘教授的投影片 http://www.hmwu.idv.tw/web/R/F03-hmwu_R-Rmarkdown.pdf link.


數學圖形的繪製之協助

數學圖形的繪製可以使用免費的開源軟體 GeoGebra, 例如以下畫拋物線,
GeoGebra不單可以畫靜態的圖, 還可以動態模擬, 也可以計算測量圖中角度、距離等, 也可以算微分、積分等等,
有別於一般的繪圖軟體.
可以使用滑鼠拖拉的方式, 對於較嫻熟的使用者, 也可以直接下指令.


GeoGebra 也可以輕鬆呈現 3D 數學圖形
需要先點開3D繪圖區, 在輸入欄位輸入 f(x,y)=sin(x*y), 按 enter, 即可看到 立體的函數圖:

Ex: 請同學即時在自己手機平板或筆電安裝 GeoGebra, 行動式裝置需安裝行動版, 到AppStore, Google store等搜尋 GeoGebra
Ex: 安裝好之後試著畫出一個任意三角形, 檢驗3條中線會交於一點, 即重心存在.
Ex: 試著畫出一個拋物線, 類似上方的圖形, 有滑桿, 動態文字等, 觀察首項係數與開口大小之關係, 觀察常數項如何影響圖形.

Ref: https://www.geogebra.org/ link

數學符號的打印之協助

我本身以前是都用 word 跟安裝在它上面之插件 MathType, 可以方便編打數學符號,
但是一直碰到換新版的 word 的時, 原有的 MathType 裝不上, 就要到處找新版的 MathType, 或是查如何使用 word 內部的 方程式編輯方式, 常常會因為太忙, 會一段時間都無法編輯數學符號, 尤其數學專業的人, 處理的數學式子, 都較複雜.
現在則習慣先用 Markdown 把 數學語法編好, 如果要用在 word 內, 再擷取為圖檔貼過去就好, 就不用為了每次 word 換新版, 我雞飛狗跳一番.

在Markdown可以直接使用 Latex 的語法編輯數學式子


註:
Tex 語法的由來:
TeX 是 Donald E. Knuth1.1 教授的精心傑作,它是個功能非常強大的幕後排版系統,含有彈性很大,而且很低階的排版語言。當初,是因為 Knuth 教授在寫他的大著 TAOCP(The Art of Computer Programming) 時,發覺書商把他書中的數學式子排得太難看了,於是決定自行開發一個非常適合排數學式子的排版語言,這就是 TeX 系統的來由。
Ref: 大家來學 LaTeX, https://www.cs.pu.edu.tw/~wckuo/doc/latex123/latex123.html link


產生數學符號之 Latex指令 要用錢字符包住 $ ⋯\cdots⋯ $,
如果要獨立一行, 就是雙重錢字符包住 $$ ⋯\cdots⋯ $$,

上標用 ^, 下標用下畫線 _
例如

上標或次方用 ^

$A^2$

A2A^2A2

如果上標有好幾個, 就用 A^{i,j,k}

$A^{i,j,k}$

Ai,j,kA^{i,j,k}Ai,j,k

上標中還可以有上標

$A^{i^{j}}$

AijA^{i^{j}}Aij

$A^{i^{j^{k}}}$

AijkA^{i^{j^{k}}}Aijk

下標用下畫線 _

$A_i$

AiA_iAi​

下標中還可以有下標

$A_{I_{2, 5}}$

AI2,5A_{I_{2, 5}}AI2,5​​

分數用 \frac{}{}

\frac{2}{5}

25\frac{2}{5}52​

\dfrac{2}{5}

25\dfrac{2}{5}52​

如果數學式子要獨立一行, 就用雙重錢字符 包住 $$ ⋯\cdots⋯ $$
例如一元二次方程式 ax2+bx+c=0ax^2+bx+c=0ax2+bx+c=0 (程式碼 $ax^2+bx+c=0$)

根與係數的公式, 以下是獨立一行置中

x=−b±b2−4ac2ax=\frac{-b\pm\sqrt{b^2-4ac}}{2a}x=2a−b±b2−4ac​​

程式碼如下
$$x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}$$

跳行則用兩個反斜線
x=−b±b2−4ac2ay=−b±b2−4ac2ax=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\\ y=\frac{-b\pm\sqrt{b^2-4ac}}{2a}x=2a−b±b2−4ac​​y=2a−b±b2−4ac​​

程式碼如下$$x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}\\y=\frac{-b\pm\sqrt{b^2-4ac}}{2a}$$

矩陣使用 \begin{array}{cc} 等等 \end{array}

(abcd)\left(\begin{array}{cc} a&b\\c&d \end{array} \right)(ac​bd​)


程式碼如下
$$\left(
\begin{array}{cc}
a & b\\
c & d
\end{array}
\right)$$

例如 R2\mathbb{R}^2R2 (程式碼 $\mathbb{R}^2$), R2R^2R2 (程式碼 $R^2$)中的 旋轉公式, R(O,θ)(x,y)=(xcos⁡(θ)−ysin⁡(θ),xsin⁡(θ)+ycos(θ)R(O,\theta)(x,y)= (x \cos(\theta)-y \sin(\theta), x\sin(\theta) + y cos(\theta) R(O,θ)(x,y)=(xcos(θ)−ysin(θ),xsin(θ)+ycos(θ)

程式碼:

$$ R(O,\theta)(x,y)=
(x \cos(\theta)-y \sin(\theta), x\sin(\theta) + y cos(\theta) $$

用矩陣表示就比較清楚

R(O,θ)(x,y)=(cos⁡(θ)−sin⁡(θ)sin⁡(θ)cos(θ))(xy)R(O,\theta)(x,y)=\left( \begin{array}{cc} \cos(\theta)&-\sin(\theta) \\ \sin(\theta)& cos(\theta) \end{array} \right) \left( \begin{array}{c} x\\y \end{array} \right)R(O,θ)(x,y)=(cos(θ)sin(θ)​−sin(θ)cos(θ)​)(xy​)

程式碼如下

程式碼如下:
$$R(O,\theta)(x,y)=
\left(
\begin{array}{cc}
\cos(\theta)&-\sin(\theta) \\
\sin(\theta)& cos(\theta)
\end{array}
\right)
\left( \begin{array}{c}  x\\y \end{array} \right)$$

積分

∫f(x)dx\int f(x)\; dx∫f(x)dx

程式碼如下
$$\int f(x)\; dx$$

微分
ddxf(x)\frac{d}{dx} f(x)dxd​f(x)

程式碼如下
$$\frac{d}{dx} f(x)$$

偏微分
∂∂xf(x)\frac{\partial}{\partial x} f(x)∂x∂​f(x)

程式碼如下
$$\frac{\partial}{\partial x} f(x)$$

複數積分
∫∣z∣=1f(z+1z2,z−1z2i)dziz=∫02πf(cosθ,sinθ)dθ\int\limits_{|z|=1} f(\frac{z+\frac{1}{z}}{2},\frac{z-\frac{1}{z}}{2i})\frac{dz}{iz}=\int_{0}^{2\pi} f(cos\theta,sin\theta) d\theta∣z∣=1∫​f(2z+z1​​,2iz−z1​​)izdz​=∫02π​f(cosθ,sinθ)dθ

程式碼如下
$$\int\limits_{|z|=1}
f(\frac{z+\frac{1}{z}}{2},\frac{z-\frac{1}{z}}{2i})\frac{dz}{iz}
=\int_{0}^{2\pi}
f(cos\theta,sin\theta) d\theta$$

極限

lim⁡x→0f(x)\lim_{x \rightarrow 0} f(x)x→0lim​f(x)

性質的敘述

thePythagoreanTheorem畢氏定理⇔theLawofCosines餘弦公式⇔theAdditionFormulaofCosines(orSines)和角公式the\; Pythagorean \;Theorem\:畢氏定理 \Leftrightarrow the\; Law\; of \;Cosines \:餘弦公式\\ \Leftrightarrow the\; Addition \;Formula \;of \;Cosines \;(or \;Sines) \:和角公式thePythagoreanTheorem畢氏定理⇔theLawofCosines餘弦公式⇔theAdditionFormulaofCosines(orSines)和角公式

程式碼如下
$$the\; Pythagorean \;Theorem\:畢氏定理\Leftrightarrow the\; Law\; of \;Cosines \:餘弦公式\\
\Leftrightarrowthe\; Addition \;Formula \;of \;Cosines \;(or \;Sines) \:和角公式$$

初學者 可以利用 GeoGebra的插入文字對話框裏, 有Latex的簡便用法

Ex: 請同學練習用 Markdown 編出以下:
橢圓之方程式
x2a2+y2b2=1.\frac{x^2}{a^2}+\frac{y^2}{b^2}=1.a2x2​+b2y2​=1.

椭球面之方程式
ellipsoid x2a2+y2b2+z2c2=1.\frac{x^2}{a^2}+\frac{y^2}{b^2}+\frac{z^2}{c^2}=1.a2x2​+b2y2​+c2z2​=1.

雙曲拋物面(馬鞍面)
hyperbolic paraboloid x2a2−y2b2=z.\frac{x^2}{a^2}-\frac{y^2}{b^2}=z.a2x2​−b2y2​=z.
Hint: 分數用 \frac{ }{ }

Ex: 將以上的方程式輸入 GeoGebra看看能否畫出圖形

Ex: 請同學練習用 Markdown 編出以下 柯西舒瓦茲不等式:
Hint: sigma 的符號用 \sum_{ 1 }^{ n }
∣∑i=1naibi∣≤(∑i=1nai2)1/2(∑i=1nbi2)1/2.\left| \sum_{i=1}^n a_ib_i \right| \le (\sum_{i=1}^n a_i^2)^{1/2} (\sum_{i=1}^n b_i^2)^{1/2}.∣∣​i=1∑n​ai​bi​∣∣​≤(i=1∑n​ai2​)1/2(i=1∑n​bi2​)1/2.
或是用更號, 看起來會較舒服
Hint: 更號 \sqrt{ }
∣∑i=1naibi∣≤(∑i=1nai2)(∑i=1nbi2).\left| \sum_{i=1}^n a_ib_i \right| \le \sqrt{ (\sum_{i=1}^n a_i^2)} \sqrt{(\sum_{i=1}^n b_i^2)}.∣∣​i=1∑n​ai​bi​∣∣​≤(i=1∑n​ai2​)​(i=1∑n​bi2​)​.
或是有時是寫成
(∑i=1naibi)2≤(∑i=1nai2)(∑i=1nbi2).\left( \sum_{i=1}^n a_ib_i \right)^2 \le (\sum_{i=1}^n a_i^2) (\sum_{i=1}^n b_i^2).(i=1∑n​ai​bi​)2≤(i=1∑n​ai2​)(i=1∑n​bi2​).
其實就是向量的內積公式:
∣⟨x,y⟩∣2≤⟨x,x⟩⋅⟨y,y⟩\big| \langle x,y\rangle \big|^2 \leq \langle x,x\rangle \cdot \langle y,y\rangle∣∣​⟨x,y⟩∣∣​2≤⟨x,x⟩⋅⟨y,y⟩
Ex: 請同學練習用 Markdown 編出以下高中數學課本實驗本中的數學式子


\displaystyle 呈現較美麗
(∑k=1nakbk)2≤(∑k=1nak2)(∑k=1nbk2)\displaystyle \left( \sum_{k=1}^n a_{k} b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)(k=1∑n​ak​bk​)2≤(k=1∑n​ak2​)(k=1∑n​bk2​)

程式碼:

$$\displaystyle
\left( \sum_{k=1}^n a_{k} b_k \right)^2
\leq
\left( \sum_{k=1}^n a_k^2 \right)
\left( \sum_{k=1}^n b_k^2 \right)$$

sin⁡(α)θ=∑i=0n(xi+cos⁡(f))\sin(\alpha)^{\theta}=\sum_{i=0}^{n}(x^i + \cos(f))sin(α)θ=i=0∑n​(xi+cos(f))

程式碼:

$$\sin(\alpha)^{\theta}=\sum_{i=0}^{n}(x^i + \cos(f))$$

1(ϕ5−ϕ)e25π=1+e−2π1+e−4π1+e−6π1+e−8π1+⋯\displaystyle \frac{1}{ \Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{ \frac25 \pi}} = 1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} { 1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots} } } }(ϕ5​​−ϕ)e52​π1​=1+1+1+1+1+⋯e−8π​e−6π​e−4π​e−2π​

程式碼:

$$\displaystyle\frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} = 1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}}{1+\frac{e^{-8\pi}}{1+\cdots} }}}$$

f(x)=∫−∞∞f^(ξ)e2πiξxdξf(x) = \int_{-\infty}^\infty \hat f(\xi)\,e^{2 \pi i \xi x} \,d\xif(x)=∫−∞∞​f^​(ξ)e2πiξxdξ

$$f(x) = \int_{-\infty}^\infty\hat f(\xi)\,e^{2 \pi i \xi x}\,d\xi$$

Latex 可以設定颜色

語法
字體颜色︰{\color{颜色}表達式}
背景颜色︰{\pagecolor{颜色}表達式}

x1,2=−b±b2−4ac2ax_{\color{Red}1,2}=\frac{-b\pm\sqrt{{\color{Orange}b^2-4ac}}}{2a}x1,2​=2a−b±b2−4ac​​

$x_{\color{Red}1,2}=\frac{-b\pm\sqrt{{\color{Orange}b^2-4ac}}}{2a}$

Ref: (推薦) 暗-小汐, LaTeX 各种命令,符号, link.


流程圖的打印可以使用 Markdown

sequence diagram 時序圖

#mermaid-svg-Ya3j7OJYmsUe0Ld9 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .error-icon{fill:#552222;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .marker.cross{stroke:#333333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 text.actor>tspan{fill:black;stroke:none;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .actor-line{stroke:grey;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .sequenceNumber{fill:white;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 #sequencenumber{fill:#333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .messageText{fill:#333;stroke:#333;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .labelText,#mermaid-svg-Ya3j7OJYmsUe0Ld9 .labelText>tspan{fill:black;stroke:none;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .loopText,#mermaid-svg-Ya3j7OJYmsUe0Ld9 .loopText>tspan{fill:black;stroke:none;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .noteText,#mermaid-svg-Ya3j7OJYmsUe0Ld9 .noteText>tspan{fill:black;stroke:none;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .actorPopupMenu{position:absolute;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 .actor-man circle,#mermaid-svg-Ya3j7OJYmsUe0Ld9 line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-Ya3j7OJYmsUe0Ld9 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}AliceBobHello Bob, how are you?Bob thinksI am good thanks!AliceBob

程式碼:

```mermaid
sequenceDiagram
Alice -->> Bob: Hello Bob, how are you?
Note right of Bob: Bob thinks
Bob -->> Alice: I am good thanks!
\```

#mermaid-svg-WvhlnkU3j2S3lr1S {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-WvhlnkU3j2S3lr1S .error-icon{fill:#552222;}#mermaid-svg-WvhlnkU3j2S3lr1S .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-WvhlnkU3j2S3lr1S .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-WvhlnkU3j2S3lr1S .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-WvhlnkU3j2S3lr1S .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-WvhlnkU3j2S3lr1S .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-WvhlnkU3j2S3lr1S .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-WvhlnkU3j2S3lr1S .marker{fill:#333333;stroke:#333333;}#mermaid-svg-WvhlnkU3j2S3lr1S .marker.cross{stroke:#333333;}#mermaid-svg-WvhlnkU3j2S3lr1S svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-WvhlnkU3j2S3lr1S .actor{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-WvhlnkU3j2S3lr1S text.actor>tspan{fill:black;stroke:none;}#mermaid-svg-WvhlnkU3j2S3lr1S .actor-line{stroke:grey;}#mermaid-svg-WvhlnkU3j2S3lr1S .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333;}#mermaid-svg-WvhlnkU3j2S3lr1S .messageLine1{stroke-width:1.5;stroke-dasharray:2,2;stroke:#333;}#mermaid-svg-WvhlnkU3j2S3lr1S #arrowhead path{fill:#333;stroke:#333;}#mermaid-svg-WvhlnkU3j2S3lr1S .sequenceNumber{fill:white;}#mermaid-svg-WvhlnkU3j2S3lr1S #sequencenumber{fill:#333;}#mermaid-svg-WvhlnkU3j2S3lr1S #crosshead path{fill:#333;stroke:#333;}#mermaid-svg-WvhlnkU3j2S3lr1S .messageText{fill:#333;stroke:#333;}#mermaid-svg-WvhlnkU3j2S3lr1S .labelBox{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-WvhlnkU3j2S3lr1S .labelText,#mermaid-svg-WvhlnkU3j2S3lr1S .labelText>tspan{fill:black;stroke:none;}#mermaid-svg-WvhlnkU3j2S3lr1S .loopText,#mermaid-svg-WvhlnkU3j2S3lr1S .loopText>tspan{fill:black;stroke:none;}#mermaid-svg-WvhlnkU3j2S3lr1S .loopLine{stroke-width:2px;stroke-dasharray:2,2;stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);}#mermaid-svg-WvhlnkU3j2S3lr1S .note{stroke:#aaaa33;fill:#fff5ad;}#mermaid-svg-WvhlnkU3j2S3lr1S .noteText,#mermaid-svg-WvhlnkU3j2S3lr1S .noteText>tspan{fill:black;stroke:none;}#mermaid-svg-WvhlnkU3j2S3lr1S .activation0{fill:#f4f4f4;stroke:#666;}#mermaid-svg-WvhlnkU3j2S3lr1S .activation1{fill:#f4f4f4;stroke:#666;}#mermaid-svg-WvhlnkU3j2S3lr1S .activation2{fill:#f4f4f4;stroke:#666;}#mermaid-svg-WvhlnkU3j2S3lr1S .actorPopupMenu{position:absolute;}#mermaid-svg-WvhlnkU3j2S3lr1S .actorPopupMenuPanel{position:absolute;fill:#ECECFF;box-shadow:0px 8px 16px 0px rgba(0,0,0,0.2);filter:drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));}#mermaid-svg-WvhlnkU3j2S3lr1S .actor-man line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;}#mermaid-svg-WvhlnkU3j2S3lr1S .actor-man circle,#mermaid-svg-WvhlnkU3j2S3lr1S line{stroke:hsl(259.6261682243, 59.7765363128%, 87.9019607843%);fill:#ECECFF;stroke-width:2px;}#mermaid-svg-WvhlnkU3j2S3lr1S :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}张三李四王五你好!李四, 最近怎么样?你最近怎么样,王五?我很好,谢谢!我很好,谢谢!李四想了很长时间, 文字太长了不适合放在一行.打量着王五...很好... 王五, 你怎么样?张三李四王五

程式碼

```mermaidsequenceDiagram张三 ->> 李四: 你好!李四, 最近怎么样?
李四-->>王五: 你最近怎么样,王五?
李四--x 张三: 我很好,谢谢!
李四-x 王五: 我很好,谢谢!
Note right of 王五: 李四想了很长时间,
文字太长了<br/>不适合放在一行.李四-->>张三: 打量着王五...
张三->>王五: 很好... 王五, 你怎么样?

甘特圖 gantt chart

Mon 06Mon 13已完成 进行中 计划中 现有任务Adding GANTT diagram functionality to mermaid

程式碼

```mermaid
ganttdateFormat  YYYY-MM-DDtitle Adding GANTT diagram functionality to mermaidsection 现有任务已完成    :done,    des1, 2014-01-06,2014-01-08进行中    :active,  des2, 2014-01-09, 3d计划中    :         des3, after des2, 5d

flowchart 垂直流程圖

Created with Raphaël 2.3.0開始我的操作確認?結束yesno

程式碼

```mermaid
flowchat
st=>start: 開始
e=>end: 結束
op=>operation: 我的操作
cond=>condition: 確認?st->op->cond
cond(yes)->e
cond(no)->op
Created with Raphaël 2.3.0开始操作Yes or No?输入/输出结束子程序yesno

ref: markdown 流程图语法, link

程式碼

```mermaid
flowchatst=>start: 开始e=>end: 结束op=>operation: 操作sub1=>subroutine: 子程序cond=>condition: Yes or No?io=>inputoutput: 输入/输出st->op->condcond(yes)->io->econd(no)->sub1(right)->op
#mermaid-svg-NkPXuceJM8Ppt6Kk {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .error-icon{fill:#552222;}#mermaid-svg-NkPXuceJM8Ppt6Kk .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-NkPXuceJM8Ppt6Kk .marker{fill:#333333;stroke:#333333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .marker.cross{stroke:#333333;}#mermaid-svg-NkPXuceJM8Ppt6Kk svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-NkPXuceJM8Ppt6Kk .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .cluster-label text{fill:#333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .cluster-label span{color:#333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .label text,#mermaid-svg-NkPXuceJM8Ppt6Kk span{fill:#333;color:#333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .node rect,#mermaid-svg-NkPXuceJM8Ppt6Kk .node circle,#mermaid-svg-NkPXuceJM8Ppt6Kk .node ellipse,#mermaid-svg-NkPXuceJM8Ppt6Kk .node polygon,#mermaid-svg-NkPXuceJM8Ppt6Kk .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-NkPXuceJM8Ppt6Kk .node .label{text-align:center;}#mermaid-svg-NkPXuceJM8Ppt6Kk .node.clickable{cursor:pointer;}#mermaid-svg-NkPXuceJM8Ppt6Kk .arrowheadPath{fill:#333333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-NkPXuceJM8Ppt6Kk .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-NkPXuceJM8Ppt6Kk .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-NkPXuceJM8Ppt6Kk .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-NkPXuceJM8Ppt6Kk .cluster text{fill:#333;}#mermaid-svg-NkPXuceJM8Ppt6Kk .cluster span{color:#333;}#mermaid-svg-NkPXuceJM8Ppt6Kk div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-NkPXuceJM8Ppt6Kk :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

three
one
c2
c1
a2
a1

程式碼

```mermaid
flowchart TB
c1-->a2
subgraph one
a1-->a2
end
subgraph three
c1-->c2
end
#mermaid-svg-HIIi7dQh7yzy1vQd {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-HIIi7dQh7yzy1vQd .error-icon{fill:#552222;}#mermaid-svg-HIIi7dQh7yzy1vQd .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-HIIi7dQh7yzy1vQd .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-HIIi7dQh7yzy1vQd .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-HIIi7dQh7yzy1vQd .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-HIIi7dQh7yzy1vQd .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-HIIi7dQh7yzy1vQd .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-HIIi7dQh7yzy1vQd .marker{fill:#333333;stroke:#333333;}#mermaid-svg-HIIi7dQh7yzy1vQd .marker.cross{stroke:#333333;}#mermaid-svg-HIIi7dQh7yzy1vQd svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-HIIi7dQh7yzy1vQd .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-HIIi7dQh7yzy1vQd .cluster-label text{fill:#333;}#mermaid-svg-HIIi7dQh7yzy1vQd .cluster-label span{color:#333;}#mermaid-svg-HIIi7dQh7yzy1vQd .label text,#mermaid-svg-HIIi7dQh7yzy1vQd span{fill:#333;color:#333;}#mermaid-svg-HIIi7dQh7yzy1vQd .node rect,#mermaid-svg-HIIi7dQh7yzy1vQd .node circle,#mermaid-svg-HIIi7dQh7yzy1vQd .node ellipse,#mermaid-svg-HIIi7dQh7yzy1vQd .node polygon,#mermaid-svg-HIIi7dQh7yzy1vQd .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-HIIi7dQh7yzy1vQd .node .label{text-align:center;}#mermaid-svg-HIIi7dQh7yzy1vQd .node.clickable{cursor:pointer;}#mermaid-svg-HIIi7dQh7yzy1vQd .arrowheadPath{fill:#333333;}#mermaid-svg-HIIi7dQh7yzy1vQd .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-HIIi7dQh7yzy1vQd .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-HIIi7dQh7yzy1vQd .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-HIIi7dQh7yzy1vQd .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-HIIi7dQh7yzy1vQd .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-HIIi7dQh7yzy1vQd .cluster text{fill:#333;}#mermaid-svg-HIIi7dQh7yzy1vQd .cluster span{color:#333;}#mermaid-svg-HIIi7dQh7yzy1vQd div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-HIIi7dQh7yzy1vQd :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

子图2变量名
子图1变量名
D
C
B
A

程式碼

```mermaid
graph TD
subgraph 子图1变量名
A-->B
end
subgraph 子图2变量名
C-->D
end
#mermaid-svg-wgR9WP43xFWMlRKi {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-wgR9WP43xFWMlRKi .error-icon{fill:#552222;}#mermaid-svg-wgR9WP43xFWMlRKi .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-wgR9WP43xFWMlRKi .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-wgR9WP43xFWMlRKi .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-wgR9WP43xFWMlRKi .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-wgR9WP43xFWMlRKi .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-wgR9WP43xFWMlRKi .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-wgR9WP43xFWMlRKi .marker{fill:#333333;stroke:#333333;}#mermaid-svg-wgR9WP43xFWMlRKi .marker.cross{stroke:#333333;}#mermaid-svg-wgR9WP43xFWMlRKi svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-wgR9WP43xFWMlRKi .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-wgR9WP43xFWMlRKi .cluster-label text{fill:#333;}#mermaid-svg-wgR9WP43xFWMlRKi .cluster-label span{color:#333;}#mermaid-svg-wgR9WP43xFWMlRKi .label text,#mermaid-svg-wgR9WP43xFWMlRKi span{fill:#333;color:#333;}#mermaid-svg-wgR9WP43xFWMlRKi .node rect,#mermaid-svg-wgR9WP43xFWMlRKi .node circle,#mermaid-svg-wgR9WP43xFWMlRKi .node ellipse,#mermaid-svg-wgR9WP43xFWMlRKi .node polygon,#mermaid-svg-wgR9WP43xFWMlRKi .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-wgR9WP43xFWMlRKi .node .label{text-align:center;}#mermaid-svg-wgR9WP43xFWMlRKi .node.clickable{cursor:pointer;}#mermaid-svg-wgR9WP43xFWMlRKi .arrowheadPath{fill:#333333;}#mermaid-svg-wgR9WP43xFWMlRKi .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-wgR9WP43xFWMlRKi .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-wgR9WP43xFWMlRKi .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-wgR9WP43xFWMlRKi .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-wgR9WP43xFWMlRKi .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-wgR9WP43xFWMlRKi .cluster text{fill:#333;}#mermaid-svg-wgR9WP43xFWMlRKi .cluster span{color:#333;}#mermaid-svg-wgR9WP43xFWMlRKi div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-wgR9WP43xFWMlRKi :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

A
B
C
D

程式碼

```mermaid
graph TB
A & B--> C & D

與以下效果一樣

#mermaid-svg-6LJkcFDEhf8zltJ8 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .error-icon{fill:#552222;}#mermaid-svg-6LJkcFDEhf8zltJ8 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-6LJkcFDEhf8zltJ8 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .marker.cross{stroke:#333333;}#mermaid-svg-6LJkcFDEhf8zltJ8 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-6LJkcFDEhf8zltJ8 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .cluster-label text{fill:#333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .cluster-label span{color:#333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .label text,#mermaid-svg-6LJkcFDEhf8zltJ8 span{fill:#333;color:#333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .node rect,#mermaid-svg-6LJkcFDEhf8zltJ8 .node circle,#mermaid-svg-6LJkcFDEhf8zltJ8 .node ellipse,#mermaid-svg-6LJkcFDEhf8zltJ8 .node polygon,#mermaid-svg-6LJkcFDEhf8zltJ8 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-6LJkcFDEhf8zltJ8 .node .label{text-align:center;}#mermaid-svg-6LJkcFDEhf8zltJ8 .node.clickable{cursor:pointer;}#mermaid-svg-6LJkcFDEhf8zltJ8 .arrowheadPath{fill:#333333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-6LJkcFDEhf8zltJ8 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-6LJkcFDEhf8zltJ8 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-6LJkcFDEhf8zltJ8 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-6LJkcFDEhf8zltJ8 .cluster text{fill:#333;}#mermaid-svg-6LJkcFDEhf8zltJ8 .cluster span{color:#333;}#mermaid-svg-6LJkcFDEhf8zltJ8 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-6LJkcFDEhf8zltJ8 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

A
C
D
B

程式碼

```mermaid
graph TB
A --> C
A --> D
B --> C
B --> D
#mermaid-svg-c7rJhu7m42Wv9M97 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-c7rJhu7m42Wv9M97 .error-icon{fill:#552222;}#mermaid-svg-c7rJhu7m42Wv9M97 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-c7rJhu7m42Wv9M97 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-c7rJhu7m42Wv9M97 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-c7rJhu7m42Wv9M97 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-c7rJhu7m42Wv9M97 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-c7rJhu7m42Wv9M97 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-c7rJhu7m42Wv9M97 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-c7rJhu7m42Wv9M97 .marker.cross{stroke:#333333;}#mermaid-svg-c7rJhu7m42Wv9M97 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-c7rJhu7m42Wv9M97 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-c7rJhu7m42Wv9M97 .cluster-label text{fill:#333;}#mermaid-svg-c7rJhu7m42Wv9M97 .cluster-label span{color:#333;}#mermaid-svg-c7rJhu7m42Wv9M97 .label text,#mermaid-svg-c7rJhu7m42Wv9M97 span{fill:#333;color:#333;}#mermaid-svg-c7rJhu7m42Wv9M97 .node rect,#mermaid-svg-c7rJhu7m42Wv9M97 .node circle,#mermaid-svg-c7rJhu7m42Wv9M97 .node ellipse,#mermaid-svg-c7rJhu7m42Wv9M97 .node polygon,#mermaid-svg-c7rJhu7m42Wv9M97 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-c7rJhu7m42Wv9M97 .node .label{text-align:center;}#mermaid-svg-c7rJhu7m42Wv9M97 .node.clickable{cursor:pointer;}#mermaid-svg-c7rJhu7m42Wv9M97 .arrowheadPath{fill:#333333;}#mermaid-svg-c7rJhu7m42Wv9M97 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-c7rJhu7m42Wv9M97 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-c7rJhu7m42Wv9M97 .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-c7rJhu7m42Wv9M97 .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-c7rJhu7m42Wv9M97 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-c7rJhu7m42Wv9M97 .cluster text{fill:#333;}#mermaid-svg-c7rJhu7m42Wv9M97 .cluster span{color:#333;}#mermaid-svg-c7rJhu7m42Wv9M97 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-c7rJhu7m42Wv9M97 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

three
two
one
c2
c1
b2
b1
a2
a1

程式碼

```mermaid
graph TB
c1-->a2
subgraph one
a1-->a2
end
subgraph two
b1-->b2
end
subgraph three
c1-->c2
end

graph LR 水平流程圖

#mermaid-svg-yA0gnDGP2lRini0Z {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-yA0gnDGP2lRini0Z .error-icon{fill:#552222;}#mermaid-svg-yA0gnDGP2lRini0Z .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-yA0gnDGP2lRini0Z .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-yA0gnDGP2lRini0Z .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-yA0gnDGP2lRini0Z .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-yA0gnDGP2lRini0Z .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-yA0gnDGP2lRini0Z .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-yA0gnDGP2lRini0Z .marker{fill:#333333;stroke:#333333;}#mermaid-svg-yA0gnDGP2lRini0Z .marker.cross{stroke:#333333;}#mermaid-svg-yA0gnDGP2lRini0Z svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-yA0gnDGP2lRini0Z .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-yA0gnDGP2lRini0Z .cluster-label text{fill:#333;}#mermaid-svg-yA0gnDGP2lRini0Z .cluster-label span{color:#333;}#mermaid-svg-yA0gnDGP2lRini0Z .label text,#mermaid-svg-yA0gnDGP2lRini0Z span{fill:#333;color:#333;}#mermaid-svg-yA0gnDGP2lRini0Z .node rect,#mermaid-svg-yA0gnDGP2lRini0Z .node circle,#mermaid-svg-yA0gnDGP2lRini0Z .node ellipse,#mermaid-svg-yA0gnDGP2lRini0Z .node polygon,#mermaid-svg-yA0gnDGP2lRini0Z .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-yA0gnDGP2lRini0Z .node .label{text-align:center;}#mermaid-svg-yA0gnDGP2lRini0Z .node.clickable{cursor:pointer;}#mermaid-svg-yA0gnDGP2lRini0Z .arrowheadPath{fill:#333333;}#mermaid-svg-yA0gnDGP2lRini0Z .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-yA0gnDGP2lRini0Z .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-yA0gnDGP2lRini0Z .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-yA0gnDGP2lRini0Z .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-yA0gnDGP2lRini0Z .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-yA0gnDGP2lRini0Z .cluster text{fill:#333;}#mermaid-svg-yA0gnDGP2lRini0Z .cluster span{color:#333;}#mermaid-svg-yA0gnDGP2lRini0Z div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-yA0gnDGP2lRini0Z :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

链接
长方形
圆角长方形
菱形

程式碼

```mermaid
graph LR
A[长方形] -- 链接 --> B((圆))
A --> C(圆角长方形)
B --> D{菱形}
C --> D

class diagram 類圖 (UML)

#mermaid-svg-IG9XbgoAuwmYS9Z7 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .error-icon{fill:#552222;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .marker.cross{stroke:#333333;}#mermaid-svg-IG9XbgoAuwmYS9Z7 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-IG9XbgoAuwmYS9Z7 g.classGroup text{fill:#9370DB;fill:#131300;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#mermaid-svg-IG9XbgoAuwmYS9Z7 g.classGroup text .title{font-weight:bolder;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .nodeLabel,#mermaid-svg-IG9XbgoAuwmYS9Z7 .edgeLabel{color:#131300;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edgeLabel .label rect{fill:#ECECFF;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .label text{fill:#131300;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edgeLabel .label span{background:#ECECFF;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .classTitle{font-weight:bolder;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .node rect,#mermaid-svg-IG9XbgoAuwmYS9Z7 .node circle,#mermaid-svg-IG9XbgoAuwmYS9Z7 .node ellipse,#mermaid-svg-IG9XbgoAuwmYS9Z7 .node polygon,#mermaid-svg-IG9XbgoAuwmYS9Z7 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .divider{stroke:#9370DB;stroke:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 g.clickable{cursor:pointer;}#mermaid-svg-IG9XbgoAuwmYS9Z7 g.classGroup rect{fill:#ECECFF;stroke:#9370DB;}#mermaid-svg-IG9XbgoAuwmYS9Z7 g.classGroup line{stroke:#9370DB;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .classLabel .label{fill:#9370DB;font-size:10px;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .relation{stroke:#333333;stroke-width:1;fill:none;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .dashed-line{stroke-dasharray:3;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #compositionStart,#mermaid-svg-IG9XbgoAuwmYS9Z7 .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #compositionEnd,#mermaid-svg-IG9XbgoAuwmYS9Z7 .composition{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #dependencyStart,#mermaid-svg-IG9XbgoAuwmYS9Z7 .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #dependencyStart,#mermaid-svg-IG9XbgoAuwmYS9Z7 .dependency{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #extensionStart,#mermaid-svg-IG9XbgoAuwmYS9Z7 .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #extensionEnd,#mermaid-svg-IG9XbgoAuwmYS9Z7 .extension{fill:#333333!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #aggregationStart,#mermaid-svg-IG9XbgoAuwmYS9Z7 .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 #aggregationEnd,#mermaid-svg-IG9XbgoAuwmYS9Z7 .aggregation{fill:#ECECFF!important;stroke:#333333!important;stroke-width:1;}#mermaid-svg-IG9XbgoAuwmYS9Z7 .edgeTerminals{font-size:11px;}#mermaid-svg-IG9XbgoAuwmYS9Z7 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

Cool
Where am i?
«interface»
Class01
int chimp
int gorilla
size()
AveryLongClass
Class09
C2
C3
Class07
Object[] elementData
equals()
Class10
>>service>>
int id
size()

程式碼

```mermaid
classDiagramClass01 <|-- AveryLongClass : Cool<<interface>> Class01Class09 --> C2 : Where am i?Class09 --* C3Class09 --|> Class07Class07 : equals()Class07 : Object[] elementDataClass01 : size()Class01 : int chimpClass01 : int gorillaclass Class10 {>>service>>int idsize()}

數學的計算與檢驗之協助

  • 國高中數學到大學微積分的範圍, 基本上都能用 GeoGebra 求解探索
  • 大二以上, 較複雜的矩陣、統計、科學計算、演算法等內容, 則 Python+NumPy+SciPy 較適合.

用 GeoGebra 檢驗觀察幾何

例如用 GeoGebra 檢驗觀察 布里昂雄定理
Brianchon’s Theorem 布里昂雄定理
外切於圓之六邊形之兩兩相對頂點連線一定共點,見下圖,ABCDEF是圓外切六邊形,O是圓心,G是頂點連線之共點。

用 GeoGebra 檢驗觀察 the Euler line 歐拉線
the Euler line 歐拉線
垂心 orthocenter H、外心 the circumcenter O、及重心 the centroid G 會共線,稱為the Euler line of the triangle.

用 GeoGebra 或 Python 做簡單的驗證:

Ref: 朱華傳 付雲皓, 美國數學邀請賽試題解答, ch7, 科學出版, 2013.

Problem9: 1960三位美國數學家證明存在 n,
使得1335+1105+845+275=n5133^5+110^5+84^5+27^5=n^51335+1105+845+275=n5,
推翻了Euler的一個猜想,
求此n
Sol:
用 GeoGebra

用Python:
Python可以表達任意長位數的優點就表現出來了(系統資源受的了的前提)

>>>133**5+110**5+84**5+27**5
61917364224
>>> 61917364224**(1/5)
144.00000000000003
>>> 144**5
61917364224

以下是用 Matlab (數年前測試的資料):


Matlab的位數長度是有限的
>> 133^5+110^5+84^5+27^5ans =6.1917e+010>> format long
>> 133^5+110^5+84^5+27^5ans =6.191736422400000e+010>> (133^5+110^5+84^5+27^5)^(1/5)ans =1.440000000000000e+002>> 1.44^5ans =6.191736422399999>> 144^5ans =6.191736422400000e+010

數學的探索之協助

數學探索主題之搜尋

幾個 YouTube上數學科普的站:

Numberphile link

3Blue1Brown link

Mathologer link

中央大學單維彰教授的站
ShannMath link

程式語言或動畫或兩者結合呈現數學的探索

動畫的探索, 可以分

  • 以 GeoGebra 探索
  • 以 Python 程式結合 turtle 海龜模組的功能, 探索

以 GeoGebra 探索

例如以 GeoGebra 探索擺線, 追逐線(=等角螺線=對數螺線), 碎形, 幾何分割等等

  • GeoGebra 一般可以不需要用到程式語言, 可以完全用滑鼠拖拉設計, 類似 GSP,
  • 但是 GeoGebra 也有自己的指令, 叫 GGBScript, 分為微積分類、幾何類、代數類等等, 只有簡單型的If 指令, 重複性的動作並沒有 for 迴圈的指令, 需要用 Repeat 指令 (Repeat( <Number>, <Scripting Command>, <Scripting Command>, … )), 是函數式程式語言的特色, 但是比 for 還是較不彈性, 所以 GeoGebra 自己的語法 GGBScript 並不能算是一個完整的程式語言.
  • GeoGebra 也可以執行 JavaScript 程式語言 (操控網頁的語言), 如果要使用較彈性的 for 迴圈, 可以
    選擇使用 JavaScrupt.
    打開物件(物件就是 GGB裡所有的東東例如, 畫出的一個圓, 一個按鈕等) 的屬性\程式, 選擇程式種類為 JavaScrupt, 輸入程式碼, 按確定, 對話窗關掉, 就可以執行
    例如以下是在屬性\程式 欄位輸入 試除法檢測因數 的JavaScript程式碼

Ex: 畫出以下六角形形成的螺線


以 GeoGebra還原 網路上講解消失的方塊魔術拼圖之原理: 帕利高畢氏切割

https://youtu.be/iFuR97YcSLM
link

網路上賣的一個拼圖,
同樣的框, 一開始四塊拼滿,
四塊拿開再裝入,
竟然多出一個小方塊的空間!?






以下我們用 GeoGebra 動態實驗 帕利高畢氏定理幾何切割之移動, 讓你豁然開朗!!!

https://www.geogebra.org/m/hkunapvx link


以 GeoGebra 探索 廣義畢氏定理

以 GeoGebra 探索幾何分割

何宗洋 拼圖(六芒星的三種切割)_29-4_33-2_29-6.jpg

以 GeoGebra 探索碎形

用 GeoGebra 的試算表繪製 Koch 雪花曲線

實作速成步驟 (參考自 GeoGebra官網分享作品 m43311 orchiming, 我梳理了10多個小時)

打開 GeoGebra 的試算表
先產生兩點A,B,
在試算表A第一個 row,  A1輸入: {A, B}
在A2(試算表A第二個row) 輸入:Join(Sequence({A1(i),
A1(i) + 1 / 3* (A1(i + 1) - A1(i)),
A1(i) + 1 / 2 *(A1(i + 1) - A1(i)) +
Rotate((A1(i + 1) - A1(i))* 1 / 3 *sqrt(3) / 2, 1.5708),
A1(i + 1) - 1 / 3 *(A1(i + 1) - A1(i)),
A1(i + 1)},
i, 1, Length(A1) - 1))接著
往下拖拉出 A3, A4,A5,,,
接著, 最好選擇在旁邊欄位, 例如在B5欄位輸入:
Sequence[ Segment[ Element[A5,i], Element[A5,i+1] ],
i,1,Length[A5]-1]
以 GeoGebra 探索擺線

以上ˋ圖片及三角形輪廓或蛇形輪廓之內擺線 可以參考
https://www.pinterest.com/pin/169307267228761622/ link

我們可以用 GeoGebra 模擬這個繪製的動作
長短擺線

園內擺線

以 Python 程式結合 turtle 海龜模組的功能, 探索

例如以 Python 探索追逐線其實就是等角螺線也稱對數螺線:

程式碼如下

# Pursuit, EquiangularSpiral
# By Prof. P-J Lai MATH. NKNU. 20201113import turtle##>>> help('turtle.towards')
##Help on function towards in turtle:
##
##turtle.towards = towards(x, y=None)
##    Return the angle of the line from the turtle's position to (x, y).
##
##    Example:
##    >>> pos()
##    (10.00, 10.00)
##    >>> towards(0,0)
##    225.0T = []
for i in range(4):T.append(turtle.Turtle())colorList = ['red', 'green', 'blue', 'purple']for i in range(4):T[i].shape('turtle')#T[i].fillcolor(colorList[i])T[i].color(colorList[i])T[i].pensize(3)T[i].penup()posList = [ (0,0), (200,0), (200,200), (0,200)]T[1].setpos(posList[1])
T[2].setpos(posList[2])
T[3].setpos(posList[3])headingList=[]
for i in range(4):headingList.append(T[i].towards( T[(i+1)%4].pos()))for i in range(4):T[i].pendown()for i in range(70):    for i in range(4):headingList[i] = T[i].towards( T[(i+1)%4].pos())T[i].setheading(headingList[i])T[i].fd(2)

初學者可以參考我之前的講義
從 Logo 海龜動畫繪圖 學習 Python - 高中彈性課程系列 1 課程簡介
https://blog.csdn.net/m0_47985483/article/details/107502070 link

例如以 Python 探索迷宮程式

可以參考

  • https://blog.csdn.net/weixin_45901519/article/details/109456646 link

  • 從 Logo 海龜繪圖 學習 Python - 高中彈性課程系列 11 用 turtle 呈現演算法之執行動作
    https://blog.csdn.net/m0_47985483/article/details/111172062?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242 link

總 Ref

  • 寫了三天,Markdown全網最全入⾨和進階教程,這次你肯定能學會, https://kknews.cc/zh-tw/news/4jy69qx.html link

  • Windows 下免費編譯 markodwn文件, Typora 網站: https://typora.io/ link

  • markdown語法 中文的說明網站: http://markdown.tw/ link

  • markdown語法 中文的重點說明: https://gist.github.com/billy3321/1001749662c370887c63bb30f26c9e6e link

  • markdown 流程图语法, https://blog.csdn.net/qq_21808961/article/details/81052243?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-5&spm=1001.2101.3001.4242 link

  • 使用 vscode 开始Markdown写作之旅, https://zhuanlan.zhihu.com/p/56943330 link

  • Day 20: 使用 VS Code 來開發 Markdown, https://ithelp.ithome.com.tw/articles/10225442 link

  • 吳漢銘教授介紹 .Rmd 檔, 用 RStudio 編譯 markdown檔: http://www.hmwu.idv.tw/web/R/F03-hmwu_R-Rmarkdown.pdf link

  • 可以即時呈現 R程式執行結果的 markdown: Rstudio支持可视化的Markdown编辑了?https://cloud.tencent.com/developer/article/1727970 link

  • GeoGebra 官網: https://www.geogebra.org/ link

  • (推薦) 暗-小汐, LaTeX 各种命令,符号, https://blog.csdn.net/anxiaoxi45/article/details/39449445 link.

  • (推薦) Markdown语法和 - -LaTeX 数学记号速查手册, http://www.domuse.com/markdown-and-latex-equation-handbook.html link

  • Latex常见符号对照表, https://blog.csdn.net/zgj926503/article/details/52757631 link

  • AMS-LaTeX, http://www.ams.org/tex/amslatex.html link

  • Wiki 的數學符號指令 link

  • GeoGebra 官網入門教學手冊中文: 介紹GeoGebra
    https://web.fg.tp.edu.tw/~math/blog/wp-content/uploads/2011/04/103-GeoGebra-%E4%BD%BF%E7%94%A8%E6%89%8B%E5%86%8A%E8%88%87%E6%95%99%E5%AD%B8%E6%B4%BB%E5%8B%95.pdf link

  • 從 Logo 海龜動畫繪圖 學習 Python - 高中彈性課程系列 1 課程簡介
    https://blog.csdn.net/m0_47985483/article/details/107502070 link

  • 從 Logo 海龜繪圖 學習 Python - 高中彈性課程系列 11 用 turtle 呈現演算法之執行動作
    https://blog.csdn.net/m0_47985483/article/details/111172062?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242 link

用免費的電腦資源協助數學的教學,學習與探索_復華中學教師營_中山大學應數系高中數學人才班_2021相关推荐

  1. visualboyadvance滤镜_VisualBoyAdvance-M v2.14 – 最新版!免費用電腦玩 GBA/GBC 遊戲的經典模擬器...

    有在電腦玩 GBA/GBC 遊戲的玩家,一定對 VisualBoyAdvance(VBA) 這款知名的模擬器不陌生,只不過 VBA 已經很久沒有更新版本,上一版還停留在 2004 年的 v1.7.2 ...

  2. (轉貼) 美電腦工程師改寫遊戲軟體向女友求婚成功 (News)

    Abstract 美國一名電腦程式工程師改寫女友最喜歡的電腦遊戲程式,在遊戲中向女友求婚,結果不僅抱得美人歸,還贏得遊戲發明公司的獎勵. Introduction轉貼自http://news.pcho ...

  3. 大數據:到2020年您應該知道的70個令人難以置信的免費數據源

    70個令人難以置信的免費數據源 所有出色的数据可视化都始于需要大量优质可靠的数据.大多数人认为收集大数据将是一项艰巨的工作,但事实并非如此.在线网站上有数千个免费数据集,任何人都可以随时对其进行分析和 ...

  4. FMDB與SQLite 數據庫應用示範:打做一隻簡單的電影資料庫 App

    原文:http://www.appcoda.com/fmdb-sqlite-database/ 作者:GABRIEL THEODOROPOULOS 譯者:kmyhy 通常在 App 中使用數據庫并處理 ...

  5. 監測Android APP 佔用系統資源的情況 (純代碼獲取)

    因為想測試自己做的APK在某一特別時刻所佔用的資源情況,所以就不用adb shell命令查看消耗信息--->直接在自己的apk當中監測. 方法都是在網上收集整理,希望靠譜吧! 如果有什麼不對請指 ...

  6. Silverlight 2.0中文學習資源集萃

    微軟MIX08 Taipei大會--Silverlight銀光是重點喔 Silverlight部落格   http://www.infoq.com/cn/news/2008/04/silverligh ...

  7. IT經理出招 電腦耗電減少

    在過去數十年中﹐耗電問題對信息技術(IT)經理來說已算不上什麼 大問題.隨著上世紀80年代個人電腦的誕生﹐曾經的大型電腦耗電問題得以解決﹐科研經費開始更多投向提高計算能力的研究. 現如今﹐IT經理們卻 ...

  8. 電腦機房空調氣流設計與節能

    近年國際間環保意識抬頭,致使世界各國紛紛積極的開始重視綠色.環保.節能等議題,於1997 年的京都議定書更被喻為人類有史以來最複雜牽扯層面最廣的協定書,這當中亦隱含了溫室氣體減量之責任應該被提升到全球 ...

  9. Unity 5.4公開測試,免費用戶也能下載使用!

    作者:ALEX LIAN  原文連結 為開發者提供可靠穩定的產品是我們一貫的使命,現在我們想提供Unity 5.4 beta版本給所有的開發者測試,包含了Unity Personal Edition版 ...

最新文章

  1. 教你轻松将springboot打包成exe程序
  2. C++ cout 输出 16, 8 , 2进制
  3. 【转】如何用Maven创建web项目(具体步骤)
  4. Handler与多线程
  5. Mtk camera driver
  6. Word2019 mac 16.46beta更新(兼容big sur,适配M1)
  7. 201521123063 《Java程序设计》 第7周学习总结
  8. mysql drivermanager.getconnection_Java DriverManager.getConnection()方法:获取数据库连接
  9. 服务器可以显示的血量显示,魔兽世界怀旧服怪物如何显示血量
  10. 个人作业——软件工程实践总结作业(待续)
  11. Linux shell 根据时间批量删除指定文件夹下的文件
  12. jQuery基础资料(二)
  13. DroidCam通过网络调用手机摄像头的方法二
  14. 跨语言词向量笔记7. 无监督跨语言词向量
  15. android闹铃唤醒软件,温柔唤醒闹钟app_温柔的闹钟铃声有哪些_华为智能闹钟智能唤醒-多特软件站安卓网...
  16. ss客户端以及tcp,udp,dns代理ss-tproxy本地安装版--centos7.3 x64以上(7.3-7.6x64测试通过)...
  17. 排错Package restore is disabled by default. To give consent, open the Visual Studio Options dialog
  18. Java内存模型(JMM)学习总结
  19. 微信小程序使用骨架屏
  20. RVIZ 的菜单背景变成黑色

热门文章

  1. vxe-table 实现复杂的表格功能。
  2. python 双精度浮点_Python双精度浮点数运算并分行显示操作示例
  3. 简单理解 tr069协议
  4. java计算器gui(有三角函数,幂运算)
  5. 用javascript函数设置延时执行jQuery
  6. GYctf-BFnote IO_FILE还可以这样利用
  7. ARM系统下使用Vdbench测试存储性能
  8. sql 条件查询以及模糊查询
  9. UNIX下PageDown健如何捕捉
  10. cesium去除控件及版权信息