製作99乘法表好像是學各種程式語言的第一堂基礎課程,現在要研究的是用LabVIEW能有幾種作法?

 


基本上輸出顯示是用2D陣列或是Table元件,資料內容為文字格式

20080131-11  

 

20080131-10  

 

 

第一種最簡單的作法是直接用雙迴圏去完成。For Loop和While Loop寫程式的主要架構大同小異,差別在於For Loop給定迴圈執行次數,不管執行條件如何都會執行完指定的次數。While Loop則只要執行條件達到隨時可停止,應用上較靈活


整個程式實際執行的次數等於內迴圈乘上外迴圏的次數,為9乘以9共81次。輸出前已將數值轉換成文字,加上*和=兩個字元合成一個字串,最後輸出到迴圈外時是2D陣列資料

20080131-01  

 

20080131-04  

 

 

第二種使用雙迴圈加上移位暫存器

20080131-02  

 

20080131-05    

 

 

第三種是先創建一個9乘9的2D空白文字陣列,然後在程式中用取代法把陣列填滿

20080131-03  

 

20080131-06  

 

 

第三種的變化形是使用移位暫存器

20080131-12  

  

20080131-07  

 

 

最後一種輸出不是2D陣列資料,而是單一文字框格式

20080131-09  

 

 

重點是Concatenate Strings元件的使用,為了整齊排列,內迴圈使用Tab Constant元件串接在每一字串後面增加空格,外迴圈則使用Carriage Return Constant元件串接在每一字串後面強制換行

20080131-08  

, ,

未出師的小工程師 發表在 痞客邦 PIXNET 留言(3) 人氣()


留言列表 (3)

發表留言
  • 小六
  • 你好:
    我依照你寫的方式下去撰寫,發現不同的字體大小會導致他的排序會歪掉,請問這情況有辦法改善修正嗎?
  • 小六
  • 不好意思,忘了註明我是使用最後一種單一文字框格式作為輸出。
  • 排序會歪掉有幾種情況,不知道你的問題是屬於哪種情況?
    1.文字元件顯示範圍不夠大,字串自動換行所以排序歪掉,這種情況把文字元件顯示範圍拉大就可以解決問題。也可以另外寫程式自動調整文字元件顯示範圍,但不適合初學者使用。
    2.文字元件顯示範圍夠大,但排序歪掉。這種情況原因很多,通常和作業系統的螢幕顯示文字設定有關。要解決這種狀況一個方法是把文字元件使用手動的方式把文字設定為"新細明體"這種可以自動調整間距的字型。另一個則是寫程式把文字元件的文字屬性設定為"新細明體"字型。
    3.若你使用的是"細明體"這類固定間距的字型,程式中Tab Constant元件的使用數量就要調整。

    未出師的小工程師 於 2014/07/12 13:40 回覆

  • wk30333
  • 你好:
    我的文字元件顯示範圍夠大,所說的排序歪掉是指
    EX:
    1*1=1 2*1=2 3*1=3 4*1=4
    1*2=2 2*2=4 3*2=6 4*2=8
    1*3=3 2*3=6 3*3=9 4*3=12
    1*4=4 2*4=8 3*4=12 4*4=16
    1*5=5 2*5=10 3*5=15 4*5=20
    1*6=6 2*6=12 3*6=18 4*6=24
    1*7=7 2*7=14 3*7=21 4*7=28
    ......................................................................................

    類似這種情形,漸漸的有兩位數的那列越往右邊就會越歪,我都有把乘出來卻是1位元的商數都加個Tab Constant元件(也就是按照您的方法),當我使用15位元時字體就會歪掉,可是調整成14或16就會變整齊,我在想是不是因為你所提的細明體這問題所造成,不過現在有灌LabVIEW的筆電不在手邊,可能要過個一兩天再做測試看看。
  • 你所敘述的這種狀況可以確定是字型的問題。這個問題出在放置文字元件時,文字元件在LabVIEW預設都是使用系統字型;而系統字型會受到螢幕顯示設定影響,所以同一程式在不同電腦可能會有不同顯示結果。通常這類問題的解決方法是在放置文字元件後,再手動調整文字元件的使用字型屬性。

    未出師的小工程師 於 2014/07/13 19:52 回覆

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼