Highslide for Wordpress Plugin

彙整於標籤 “程式設計”

前情提要:[C語言練習]換日時重新在新檔案輸出標題列

原本以為一天分隔一個檔案就可以高枕無憂了,沒想到產生的檔案還是太大,電腦無法做後續處理(匯入 matlab 會當機),於是只好繼續研究要怎麼讓它每隔 n 小時就自動分割產出一個 csv 檔。

思路:將時分秒轉換為一個整數(now_time),一天分成六個區間,當時間整數落在某個區間時,就設定輸出檔案名稱為區間起始值。
(亦即,If (now_time >= starttime && now_time < endtime), then filename = starttime; )

繼續閱讀 »

Comments 沒有迴響 »

這個主題是從一個很大的程式中抽取部分來精簡化,所以有些程式碼看起來可能是多餘的,其實是因為中間還有很多行別的用途的程式碼被砍掉了。

原先是從FPGA讀入資料後,經過 calc() 計算後,將結果輸出到一個csv檔案,但是這樣檔案隨著時間會越來越大,因此就衍伸思考:是否能在換日的時候,重新開出一個檔案並產出標題列。

原先的想法是直接在 calc() 裡面去判斷時間,如果發現日期換了,就輸出標題列;但是因為 calc() 呼叫頻率是60Hz,沒控制好就會跑出60行標題列,因此決定使用雙重判斷條件(日期&旗標),在第一次寫入標題後,就更改旗標狀態避免重複寫。

繼續閱讀 »

Comments 沒有迴響 »

給定五筆學生的姓名與分數資料,試寫出一個max()去找出最高分,並印出學生姓名&分數。

思考理路:

建立一個結構,有姓名跟分數兩個欄位;新建一個屬於該結構的變數,將五筆資料分別存入

   1: struct data {//宣告我要建立一個名為 student 的變數,裡面會有5筆資料,且套用data結構為: 

   2:     char name[10]; //name欄位:存放10個字元 

   3:     int score; //score欄位:存放整數 

   4: };

   5: int main(void) {

   6:     struct data student[5]={{"Alley", 40},{"Brian",55},{"Cindy",97},{"David",89},{"Emma",63}}; //給定五筆學生的姓名跟分數資料 

   7:     system("pause"); 

   8:     return 0; 

   9: } 

繼續閱讀 »

Comments 沒有迴響 »

前情提要

在前一次上課已經大略的把VB.NET基礎的主控台應用程式部份講完了(完整上課內容請參閱[VB.NET]VB.NET程式設計基礎入門-Part 3),在這邊附上關於三星彩開獎模擬程式,我的最終作品:

   1: Module 亂數應用

   2:  

   3:     Sub Main()

   4:         Dim Num() = {0, 0, 0}, I As Integer

   5:         Console.WriteLine("{0}[3星彩]開獎程式...{1}", vbNewLine, vbNewLine)

   6:         For I = 0 To Num.GetUpperBound(0)

   7:             Num(I) = 延遲開獎(I)

   8:         Next

   9:         Console.WriteLine("{0}本期號碼:【{1}】 【{2}】 【{3}】", vbNewLine, Num(0), Num(1), Num(2))

  10:         Call 兌獎相關號碼(Num)

  11:         Console.Read()

  12:     End Sub

  13:     Function 延遲開獎(ByVal No)

  14:         Dim temp, X As Integer

  15:         Randomize()

  16:         X = Int(Rnd() * 3) + 1

  17:         temp = Int(Rnd() * 9) + 1

  18:         Console.Write("第{0}個開出的數字是:[{1}]", No + 1, temp)

  19:         If No < 2 Then

  20:             Console.WriteLine(",{0}秒後開出下一個數字", X)

  21:             System.Threading.Thread.Sleep(X * 1000)

  22:         Else

  23:             Console.WriteLine(",全部數字都已經開出")

  24:         End If

  25:         Return (temp)

  26:     End Function

  27:     Sub 兌獎相關號碼(ByVal LotoNum)

  28:         'LotoNum = {2, 3, 2}

  29:         Dim group(8) As String

  30:         group(0)=LotoNum(0) & LotoNum(1) & LotoNum(2)

  31:         If LotoNum(0) = LotoNum(1) And LotoNum(0) <> LotoNum(2) Then

  32:             group(1) = LotoNum(0) & LotoNum(0) & LotoNum(2)

  33:             group(2) = LotoNum(0) & LotoNum(2) & LotoNum(0)

  34:             group(3) = LotoNum(2) & LotoNum(0) & LotoNum(0)

  35:         End If

  36:         If LotoNum(0) = LotoNum(2) And LotoNum(0) <> LotoNum(1) Then

  37:             group(1) = LotoNum(0) & LotoNum(0) & LotoNum(1)

  38:             group(2) = LotoNum(0) & LotoNum(1) & LotoNum(0)

  39:             group(3) = LotoNum(1) & LotoNum(0) & LotoNum(0)

  40:         End If

  41:         If LotoNum(1) = LotoNum(2) And LotoNum(0) <> LotoNum(1) Then

  42:             group(1) = LotoNum(0) & LotoNum(1) & LotoNum(1)

  43:             group(2) = LotoNum(1) & LotoNum(0) & LotoNum(1)

  44:             group(3) = LotoNum(1) & LotoNum(1) & LotoNum(0)

  45:         End If

  46:         If LotoNum(0) <> LotoNum(1) And LotoNum(1) <> LotoNum(2) And LotoNum(0) <> LotoNum(2) Then

  47:             group(1) = LotoNum(0) & LotoNum(1) & LotoNum(2)

  48:             group(2) = LotoNum(0) & LotoNum(2) & LotoNum(1)

  49:             group(3) = LotoNum(1) & LotoNum(0) & LotoNum(2)

  50:             group(4) = LotoNum(1) & LotoNum(2) & LotoNum(0)

  51:             group(5) = LotoNum(2) & LotoNum(0) & LotoNum(1)

  52:             group(6) = LotoNum(2) & LotoNum(1) & LotoNum(0)

  53:         End If

  54:         group(7)=LotoNum(0) & LotoNum(1)

  55:         group(8)=LotoNum(1) & LotoNum(2)

  56:         Console.WriteLine("{0}各種兌獎組合號碼如下{1}", vbNewLine, vbNewLine)

  57:         Console.WriteLine("正 彩:")

  58:         Console.WriteLine("{0}{1}", vbTab, group(0))

  59:         '兩球同號

  60:         Console.WriteLine("3組彩:")

  61:         If LotoNum(1) = LotoNum(2) And LotoNum(0) = LotoNum(1) Then

  62:             Console.WriteLine("{0}本期無此組合", vbTab)

  63:         Else

  64:             Console.WriteLine("{0}{1}、{2}、{3}", vbTab, group(1), group(2), group(3))

  65:         End If

  66:         '三球皆不同號

  67:         Console.WriteLine("6組彩:")

  68:         If LotoNum(0) <> LotoNum(1) And LotoNum(1) <> LotoNum(2) And LotoNum(0) <> LotoNum(2) Then

  69:             Console.WriteLine("{0}{1}、{2}、{3}、{4}、{5}、{6}", vbTab, group(1), group(2), group(3),

  70:                  group(4), group(5), group(6))

  71:         Else

  72:             Console.WriteLine("{0}本期無此組合", vbTab)

  73:         End If

  74:         '只看頭或尾的兩個數字

  75:         Console.WriteLine("對 彩:")

  76:         Console.WriteLine("{0}{1}、{2}", vbTab, group(7), group(8))

  77:     End Sub

  78: End Module

再來要開始進入Windows Form 應用程式,也就是表單的部份

繼續閱讀 »

Comments 沒有迴響 »

前情提要

    ●"EX03.sln(.vbproj) – 模擬發票列表
    @提供"單價"與"數量"
     單價在10萬以內 – As Double
     數量在1~100件 – As Integer
    @報表明細
     應付金額:________(貨幣-改良版)
     營業稅額:________
     ================================
     總計金額:________
    ●"主函數"模組化-語法執行中心
    Sub Main()
        Dim 單價 = Set_Price()
        Dim 數量 = Set_Number()
        Print_Out(單價, 數量)
        Console.Read()
    End Sub

前一次的完整上課內容請參閱[VB.NET]VB.NET程式設計基礎入門-Part 2

繼續閱讀 »

Comments 1個迴響 »

前情提要

前一次上課內容請參閱[VB.NET]VB.NET程式設計基礎入門-Part 1,這次接續上次的人工判斷(IF)的部份,完成中式報時的五大時段

上課內容

VB.NET 2010
※"判別"語法
☆人工式IF//N選1
    If        (A) Then
            (B)
    ElseIf    (A) Then
            (B)
    ElseIf    (A) Then
            (B)
    …
    Else
            (C)
    End If

繼續閱讀 »

Comments 沒有迴響 »

前言

在程式寫作上,之前只有接觸過C跟一些簡單的VB(Visual Basic 6.0),但是在看過人力銀行上面各個程式設計師的應徵條件後,發現.NET是微軟體系的方向(另外一個就是甲骨文體系:JAVA & Oracle),因此就打算去補習班進修一番。

我報名的是巨X電腦的VB.NET程式設計基礎入門課程,授課時數15小時,學習目標有:

  1. 讓程式設計初學者了解 .NET架構與功能。
  2. 了解程式語言的資料型別、語言基礎和開發環境。
  3. 流程控制、陣列、程式邏輯、迴圈。

今天是第一次上課,將課程內容紀錄在這裡備忘。

繼續閱讀 »

Comments 2個迴響 »