2022年4月5日 星期二

Topic36:Python學習4_函數圖形

 

◆主題:◆7年級後測

健康促進http://www.openhealth.com.tw/110tp/

◆主題1:◆二次函數圖形

假設開口向下拋物線方程式:y = -x**2

 ► 參考程式:

import matplotlib.pyplot as plt       #匯入pyplot繪圖簿
import numpy as np                    #計算函數值
x = np.linspace(-10,10,50)           #建立一個-10至10分成50等分的矩陣(預設50)
y = -x*x                    #設定抛物線函數
plt.plot(x,y)                   #畫出x和y的關係圖(資料表)
plt.show()                    #顯示函數圖形

► 說明:

1. Matplotlib 是一個把數據可視覺化的套件,是一個非常實用的工具!
2.plt.show() 是把畫出來的圖形顯示出來。
3.plt.t.title("Quadratic function") 是顯示圖形的標題。
4.plt.xlabel("x 軸") 是X 軸的標籤。
5.plt.ylabel("y 軸") 是Y 軸的標籤。
6.plt.figure()  下打出兩個函數圖形,最後再輸入 plt.show() 就可以一次顯示兩圖。

◆主題2:◆一次函數圖形

假設直線方程式:y = 2 * x + 3

► 參考程式:

from matplotlib import pyplot as plt
import numpy as np
x = np.linspace(-10, 10, 50)        # 建立一個把 -10 到 10切分成 50 等分的矩陣
y = 2 * x + 3                       # 設定 y 軸的值
plt.plot(x, y)                      # 畫出 x 和 y 的關係
plt.show()                          # 顯示圖片

► 說明:

1. Matplotlib 是一個把數據可視覺化的套件,是一個非常實用的工具!

2.

◆主題3:◆三角函數圖形

假設直線方程式:y = sin(x )

► 參考程式:

import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0,9.42,50)    # 建立一個把 -10 到 9.42切分成 50 等分的矩陣
y = np.sin(x)                  # 設定 y 軸的值
plt.plot(x, y)                # 畫出 x 和 y 的關係圖
plt.grid("y = sin(x)")
plt.show()                    # 顯示圖片

► 說明:

1. Matplotlib 是一個把數據可視覺化的套件,是一個非常實用的工具!

2022年3月20日 星期日

Topic35:Python學習3_絕對值

  


◆主題1:◆絕對值

假設數線上有A(a)、B(b)二點,求AB距離=|a-b|
► 流程圖:

► 參考程式:

a = int(input("請輸入A座標:"))
b = int(input("請輸入B座標:"))
print("A座標值:",a)
print("B座標值:",b)
if a > b:
    x = a - b 
else:
    x = b - a
print("AB的距離=",x)

► 說明:

1. 紅色的部分稱“字串”,會忠實地顯示在結果畫面上。
2. x、a、b稱“變數”,會以它們的值呈現。
3. input()是請求鍵盤輸入,print()是印出資訊。
4. int( )是將輸入的字串轉成整數。
5. 「if…else…」是「如果○○就○○,否則○○」
6. 「if…else…」注意冒號及縮排,If和else要對齊。程式中縮排的空格數目必須相同,一般用4格,不可以和Tab混用,一般是用空白鍵。

► 執行情形:



►線上Python編輯器:

1. https://colab.research.google.com/
2. https://www.programiz.com/python-programming/online-compiler/

►自我練習1:

假設學生成績為整數x,要求輸出該生成績是否及格。
►參考答案


◆重點2:◆Python的if基本語法

條件判斷是讓Python變得更聰明的方法。如果我們有一個明確的條件 (如果怎麼樣,就做什麼事),就可以使用if判斷式。

►if基本語法:

if的口語為日常生活的「如果...就...」,當條件運算式的值為True時,執行if語句裡面的敘述。

►說明:

寫法:在if後面寫上「條件」之後,要上一個:(冒號)才能到下一行,下一行時,利用縮排(4個空格),來區分程式碼的區塊。(代表是if: 區塊裡面)。

if  條件運算式:條件成立時就做這個敘述

►參考程式:

sun = True:
if sun is True print("擦防曬!")
print "出門")



與for, if  相同,while語句後面要加冒號,並且在while裡的程式碼要空4格。

while 地球還在的一天: 我就會繼續愛著你

► 參考程式4:While迴圈:紅綠燈倒數20,29,...,1的值

n = 20 while n >= 0: print(n) n = n - 1
print("禁止通行")


► 參考程式5:While迴圈:等差級數的公式1+2+3+...+100的值



2022年3月7日 星期一

Topic34:Python學習2_整數加法

 ◆主題1:◆第1支程式

字串、整數及變數。

► 流程圖繪製: 

►參考程式:

print("白熊")
print("黑熊")

============================

print("  /|")
print(" / |")
print("/_|")

============================

print("白熊今年8歲")
print("白熊身高168公分")
print("白熊喜歡自己8歲")

============================

name = "白熊"
age = 8
is_male = Ture
print("有一隻叫" + name)
print(name + "今年8歲")
print(name + "身高168公分")
print(name + "喜歡自己8歲")

►說明:

1. 紅色的部分稱「字串」。
2. name、age稱「變數」,print會以它們的值呈現。
3. input()是請求鍵盤輸入,print()是印出資訊。
4. int()是將輸入的字串轉成整數。


◆主題2:◆整數加法

假設我們有兩個整數x和y,要求輸出x+y的結果。

► 流程圖: 

►參考程式:

x= int(input("請輸入x值:"))
y= int(input("請輸入y值:"))
print("x值:",x)
print("y值:",y)
z = x + y
print("z = x + y =",z)

►說明:

1. 紅色的部分稱“字串”,會忠實地顯示在結果畫面上。
2. x、y、z稱“變數”,會以它們的值呈現。
3. input()是請求鍵盤輸入,print()是印出資訊。
4. int( )是將輸入的字串轉成整數(鍵盤輸入的都視為“字串”。

►執行情形:

►線上Python編輯器:

1. https://colab.research.google.com/
2. https://www.programiz.com/python-programming/online-compiler/

►自我練習1:

假設學生制服售價如下:上衣$300、褲子$350、背心$250,請輸入我們購買上衣、褲子及背心數量,並要求輸出訂購服裝總金額的結果。
►參考答案

►自我練習2:

假設有一梯形,上底、下底、高分別為浮點數x、y及h,要求輸出梯形面積結果。
►參考答案

2022年3月6日 星期日

Topic33:Python學習1_環境建置

主題1: Python環境建置

► 安裝Python:網址https://www.python.org/downloads/

Step1:從Python官網的下載頁面下載安裝檔

Step2:執行安裝檔
1. 先勾選下方「Add Python3.10 to Path」選項
2. 再點選Install Now進行安裝

Step3:安裝完畢

► VSCode

二、Visual Studio Code,網址https://code.visualstudio.com/


剛開始學習使用Python的人可能會擔心安裝失敗,或下載版本錯誤的問題,但是網路上提供諸多免費開發環境像是Jupyter Notebook及Google Colab (Colaboratory),本篇介紹Google Colab互動式環境,在學習時不用預花太多成本,且能夠支援加速硬體(GPU及TPU),讓你隨時隨地都可以編輯Python程式語言。

2022年2月28日 星期一

Topic32:Python學習0:Google Colaboratory介紹

► 前言

剛開始學習使用Python的人可能會擔心安裝失敗,或下載版本錯誤的問題,但是網路上提供諸多免費開發環境像是Jupyter Notebook及Google Colab (Colaboratory),本篇介紹Google Colab互動式環境,在學習時不用預花太多成本,且能夠支援加速硬體(GPU及TPU),讓你隨時隨地都可以編輯Python程式語言。

Google Colab是一個基於Jupyter Notebook的免費CPU虛擬機,透過瀏覽器即可編寫程式,可以連接Google Drive雲端硬碟,將訓練完成的AI模型或資料科學處理的資料進行儲存。

► 安裝環境建置

1.安裝Python,網址https://www.python.org/downloads/

2.Visual Studio Code,網址https://code.visualstudio.com/


◆重點1:◆Google Colab雲端開發環境介紹

  • (1)Google Colaboratory (簡稱為Colab):可直接在瀏覽器上撰寫及執Python。
  • (2)可以免費使用GPU(Graphics Processing Unit繪圖處理器)。
  • (3)可以將文件與程式並存在同一頁面
  • (4)可以共用與協作、分享
  • (5)開啟GitHub筆記本,可以點選GitHub,貼上ipynb檔案網址。

► Google Colab介紹

Google Colab是一個基於Jupyter Notebook的免費CPU虛擬機,透過瀏覽器即可編寫程式,可以連接Google Drive雲端硬碟,將訓練完成的AI模型或資料科學處理的資料進行儲存,而Google Colab擁有以下幾個特點:

  • 不需任何設定:瀏覽器開啟Google Colab,連線完成即建立好虛擬機。
  • 免費使用GPU或TPU:Colab不能選擇使用哪種類型的GPU,由於免費使用的關係,Colab無法保證資源,會依據時間和使用者有浮動。
  • 共用功能:Colab筆記本是存在Google Drive,方便管理ipynb檔案。
  • 開啟GitHub筆記本:透過開啟筆記本功能,可以點選GitHub選項,貼上你從GitHub看到的ipynb檔案網址,就可以在Google Colab開啟檔案或複製至自身的Google Drive。


◆重點2:◆Google Colab雲端安裝

  • (1)進入Google後登入帳號,進入「雲端硬碟」
  • (2)點選「新增」/按「更多」/「+連結更多應用程式」
  • (3)搜尋「Colaboratory 」,按下「安裝」即可


◆重點3:◆Google Colab開啟

  • (1)進入Google後登入帳號,搜尋「Cloaboratory」,點選「Google Colab」
  • (2)進入Colab後,點選「檔案」/「新增筆記本」
  • (3)重新命名,在左角點選檔案名稱,就可以立即重新命名
  • (4)「+程式碼」增加程式碼單元格;「+文字」增加文字敘述單元格
  • (5)執行程式碼方式有:
    方法1:按下程式碼單元格左方的PLAY按鈕
    方法2:Shift + Enter:執行此單元格後,移至下個單元格
    方法3:Ctrl+Enter:執行此單元格
  • (6)儲存
    點選/ 檔案/ 儲存,將檔案存「雲端硬碟」/「Colab Notebooks」資料夾中

► Google Colab使用教學

Stop01:開啟雲端硬碟,點選「新增/ 更多/ +連結更多應用程式」來安裝應用,如圖:


Stop02:點選「連結更多應用程式」找尋「Colab」,如圖:

 

Stop03:點二下,即可進行Colaboratory安裝,如圖: 

Stop04:安裝完成後,點選Google Colaboratory進入Colab主畫面,如圖:

Stop05:點選功能表「執行階段/ 變更執行階段類型」如圖: 

Stop06:「筆記本設定」對話框,「硬體加速器」下拉式選單,選項內容為None、GPU及TPU,我們點選GPU硬體加速器,按下儲存,如圖:

Stop07:點選主換面右上角「連線」,當系統連接完成後,可以看到創建出的虛擬機資訊,代表Python開發環境都已經建立完成,即可進行Python程式語言實作與練習,如圖: 

指令輸入以下指令,滑鼠移到左邊按鈕,點選後即可執行指令(或鍵盤按下shift+enter),nvidia-smi可以查看目前GPU使用的型號,指令前面多一個「!」為Linux指令,結果會顯示於指令執行匡下方,如下圖:

開發環境已經建立完成,可以執行其他Python的指令操作。

 ►小結

透過以上講解,相信已經了解Google Colab的方便性及實用性,可以非常方便的練習Python程式語言,不需要下載及安裝,只需要開啟瀏覽器就可以。


◆重點4:◆以Google Classroom協作

  • (1)進入Google後登入帳號,搜尋「Google Classroom」,點選「Classroom」
  • (2)進入Google Classroom後,於右側點選「+」
        老師點選「建立課程」
        學生點選「加入課程」

  • (3)老師端:輸入「課程名稱」「單元」「科目」及「教室」,按下「建立」即可
  • (4)老師端:點選「課堂作業」項目/ 「+建立」/ 「資料」即可
  • (5)老師端:鍵入「標題」/ 「新增」/ 「連結」將Colab共用選項中複製連結後貼上即可
  • (6)學生端:點選「課堂作業」項目/ 點選項中講義文件即可


◆重點5:◆Google Colaboratory基本操作

  • (1)搜尋「Google Colab」,點選「Google Colaboratory」
  • (2)「如何開啟Colab筆記本」:點選「檔案」/  「新增筆記本」
  • (3)「為檔案重新命名」:只要在左角點選輸入「課程名稱」「單元」「科目」及「教室」,按下「建立」即可

  • (4)
  • (5)
  • (6)
  • (7)
  • (8)

2022年2月24日 星期四

Topic31:Python入門介紹及演算法

◆重點1:◆Python語言程式簡介

  •  Python屬於高階語言
  • Python是一種直譯式的電腦語言
  • Python易於學習、免費且開放原始碼
  • 移植性較高並且擁有豐富的第三方套件

◆重點2 :◆Python的優勢

  •  資料型態簡潔
  • a = 3               #整數
    print(a**10)         #a的10次方
    b = 3.14             #浮點數 print(b**10)         #b的10次方

  • 語法很人性化
    a = [2, "ab", [3, 4, "cd"], "Hello World"]

  • 運算子取用接近人類的習慣
    a = 3                 #整數 b = "Hello World"            #浮點數
    print(a * 3)                 #數值3倍
    print(b * 3)                 #輸出字串3次

  • and、or、xor等邏輯運算子直接用英文,超好記憶
    x = 2 y = -1
    z = x > 3 and y < 0
    u = x > 3 or y < 0
    print(z)            #False
    print(u)            #True

  • 內部函式特別多且實用
    a = [4, 22, 5] print(max(a))            #列出最大值
    a.sort()                 #a資料做排序
    print(u)

  • 外掛套件源源不絕
    !pip install twstock    #安裝股市盤價資料
    import twstock as a
    b = a.Stock("3008")     #3008大立光
    print(b.price)          #近一個月盤價


◆重點3 :◆Python可以做什麼

  •  數據分析與處理
  • Web開發應用
  • 人工智慧應用

◆重點4 :◆學習Python可以從事什麼工作

  • 後端工程師、自動化作業
  • 數據分析師、遊戲開發者
  • 網站開發
  • 爬蟲獲取或處理大量信息

► 安裝&環境建置

1.安裝Python,網址https://www.python.org/downloads/

2.Visual Studio Code,網址https://code.visualstudio.com/

► Google Colab使用教學

Stop01:開啟雲端硬碟,點選「新增/ 更多/ +連結更多應用程式」來安裝應用,如圖:

◆重點5 :◆什麼是演算法(Algorithm)?

在這個資訊大爆炸的時代裡,每個人或多或少都有聽過 演算法(Algorithm) 這三個字。

演算法並非是程式語言,而在電腦出現之前,演算法在數學界已經進行得如火如荼了!你知道嗎?國中所學的輾轉相除法是目前公認的世界上第一個演算法喔!

那到底什麼是演算法呢?根據 Wiki 的定義是

為任何良定義的具體計算步驟的一個序列,常用於計算、資料處理和自動推理。精確而言,演算法是一個表示爲有限長列表的有效方法。演算法應包含清晰定義的指令用於計算函式。

換句話說,演算法是

可以解決某些問題的有效方法之有限集合。

一、演算法

二、氣泡排序(Bubble Sort)

三、快速排序(uick Sort)



2022年2月20日 星期日

Topic30:一起來打中文!

 一、中文打字練習

1. 中英看打國際認證 程式下載

2. 注音符號系統:

1918教育部正式公佈,1919年重新排定注音字母,依發音部位排列,即

  • 聲母(21個):ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙ
  • 介音(03個):ㄧㄨㄩ
  • 韻母(13個):ㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦ



3. 正確的坐姿:

眼睛平視電腦螢幕。
手臂自然下垂與手肘成90度,手臂與地面垂直,小臂和手掌與地面平行。
背要直腰椎與大腿成90度,脊椎與地面垂直,大腿與地面平行。
小腿自然彎曲與大腿成90度,腳掌得平貼到地面。

4. 避免錯誤的姿勢:

  • 錯誤1:低頭看螢幕或距離 螢幕 過近(嚴重影響視力,同時會造成頸椎損傷)
  • 錯誤2:桌子較高,胳膊架在桌上, 伸展 手臂用滑鼠(肩周痛;滑鼠手;肘關節痛)
  • 錯誤3:身體前傾,脊椎成C狀(腰肌勞損;腹部贅肉;大腿根發麻)
  • 錯誤4:翹二郎腿(腰酸痛;一條腿麻;對泌尿系統有不利影響)
  • 錯誤5:長時間不活動

5. 注音符號鍵盤練習: