Showing posts with label 作業. Show all posts
Showing posts with label 作業. Show all posts

[TKU][105-02] 模糊理論

[TKU][105-02] 模糊理論
    作業一

[TKU][105-02] 無線網路概論

[TKU][105-02] 無線網路概論
    作業一

[TKU][105-02] 嵌入式系統


【Linux安裝】
  1. ubuntu                 https://www.ubuntu.com/
     14.4.03-desktop-amd64  http://old-releases.ubuntu.com/

  2. VirtualBox             https://www.virtualbox.org/

  3. Rufus                  https://rufus.akeo.ie/?locale=zh_TW
     Rufus教學               http://blog.xuite.net/yh96301/blog/450717778

【Linux教學】
  鳥哥的Linux私房菜           http://linux.vbird.org/

【開發板】
  LinkIt Smart 7688         https://labs.mediatek.com/zh-tw/platform/linkit-smart-7688

【上課筆記】
  上課筆記

[TKU][105-02] 數位通訊系統

[TKU][105-02] 數位通訊系統

[TKU][105-1] 模式識別

[TKU][105-1] 模式識別

[TKU][105-1] 控制系統

[TKU][105-1] 控制系統

[TKU][105-1] 電磁學

[TKU][105-1] 電磁學

[TKU][104-02][基電實驗] App Inventor 2

[TKU][104-02] 基礎電機實驗

[TKU][104-02][Matlab] 圖控程式

[TKU][104-02][Matlab] 圖控程式

[TKU][104-02][Matlab] 數值分析

[TKU][104-02][Matlab] Numerical Methods

[TKU][104-02][Matlab] 信號與系統

[TKU][104-02][Matlab] Signals and Systems 

[C][104資料結構][HwA] Operation of Sparse Matrix

資料結構(Data Structures)    程式作業-A    以陣列做稀疏矩陣之運算

以Ch2-4.c 的稀疏矩陣陣列表示法為基礎,擴充支援稀疏矩陣之加、減、乘、轉置,等運算。
由『敎學支援平台』本課程之「$程式作業-規格要求」中下載ExerciseA.rar。

ExerciseA.rar內之檔案:
 ExerciseA.h :宣告用標頭檔,不應有所更動。
 ExerciseA.c : 作業中要求補齊功能的五個函數應由學生定義在其中
• void printSparseMatrix(Matrix *mat)
• void transSparseMatrix(Matrix *result, Matrix *source)
• void addSparseMatrix(Matrix *sum, Matrix *matA, Matrix *matB)
• void subSparseMatrix(Matrix *diff, Matrix *matA, Matrix *matB)
• void multSparseMatrix(Matrix *prod, Matrix *matA, Matrix *matB)
 ExerA-Data.c :含矩陣輸入資料與運算驅動程式

作業繳交時,學生必須包括至少一份可正確執行的測試資料(即ExerA-Data.c )
作業批改時,助教會換上新的測試資料(新的ExerA-Data.c )以驗證程式正確性



※程式功能要求
  補上這五個C函數的定義(在ExerciseA.c 之中)
• printSparseMatrix(Matrix *mat)
 用長方型格式輪出稀疏矩陣*mat;原稀疏矩陣無值的項補零印出
• transSparseMatrix(Matrix *result, Matrix *source)
 將稀疏矩陣*source 轉置(transpose),置入稀疏矩陣*result 之中
• addSparseMatrix(Matrix *sum, Matrix *matA, Matrix *matB)
 將矩陣*matA 加上矩陣*matB, 結果置入矩陣*sum 之中
  (*sum) = (*matA) + (*matB)
• subSparseMatrix(Matrix *diff, Matrix *matA, Matrix *matB)
 將矩陣*matA 減去矩陣*matB, 結果置入矩陣*diff 之中
  (*diff) = (*matA) - (*matB)
• multSparseMatrix(Matrix *prod, Matrix *matA, Matrix *matB)
 將矩陣*matA 乘上*matB, 結果置入矩陣*prod 之中
  (*prod) = (*matA) X (*matB)

  注意參數的順序!




※書面報告
1.時間複雜度分析.doc
  以Big Oh, O()符號, 表示出你的程式所用之演算法,各計算函數之時間複雜度,
    表示成rows, cols, numOfTerms 的函數。參考課本p.1-31頁「1-7-1 Big Oh函數的基礎」,
    簡單分析並概要說明如下你寫的C函數其時間複雜度為何?
    1) void transSparseMatrix(Matrix *result, Matrix *source)以r, c, n, 表示
    2) void addSparseMatrix(Matrix *sum, Matrix *matA, Matrix *matB) &
       void subSparseMatrix(Matrix *diff, Matrix *matA, Matrix *matB)
     以r, c, nA, nB, 表示(note: r = rA = rB, c = cA = cB )
    3) void multSparseMatrix(Matrix *prod, Matrix *matA, Matrix *matB)
     以rA, cr, nA, cB, nB, 表示(note: cr = cA = rB )
2.程式作業A說明.doc
  概要說明程式使用及設計方式,及程式撰寫及測試過程是否遭遇困難及解決之道。

  以上分為兩個MS Word檔,連同程式碼一併繳交。


題目:ExerciseA.rar
https://drive.google.com/open?id=0B1cXVSjadhC0R0djVmZTcUVCdFE