Presentation is loading. Please wait.

Presentation is loading. Please wait.

補充教材. 主題 JDK 與 Tomcat 5.5.x 的安裝 迴圈 MySQL Workbench.

Similar presentations


Presentation on theme: "補充教材. 主題 JDK 與 Tomcat 5.5.x 的安裝 迴圈 MySQL Workbench."— Presentation transcript:

1 補充教材

2 主題 JDK 與 Tomcat 5.5.x 的安裝 迴圈 MySQL Workbench

3 Java 開發環境的建立 JDK 的安裝 –http://www.oracle.com/technetwork/java/index.ht ml 免費下載http://www.oracle.com/technetwork/java/index.ht ml 環境變數設定

4 安裝 JDK

5

6

7

8 如此一來就簡單的安裝好 JDK 軟體了 !!

9 環境變數設定 1. 在「我的電腦」按右鍵,點選「內容」,即跳出以下的 畫面後,選擇 「進階」這個標籤後,點選「環境變數」

10 在「系統變數」那欄,點選變數名稱為「 Path 」,並按下「編輯」

11 在變數值的最後面加入 c:\jdk\bin ,並以 “;” 跟之前的變數值隔開,而 c:\jdk\bin 需鍵入剛才安裝 JDK 的目錄。鍵入完畢後按下「確定」後即完成 環境的變數設定

12 新增環境變數 JAVA_HOME ,讓它的值為 c:\jdk 結束後,請記得重新登入 / 開機。

13 安裝 Tomcat Tomcat 5.5.x 的安裝 – 請參考 http://web.nchu.edu.tw/~jlu/cyut/tomcat55.shtml http://web.nchu.edu.tw/~jlu/cyut/tomcat55.shtml – 如果你的作業系統是 64 bits 的版本,請下載下列 檔案(如果是 Intel 的 CPU ,到 x64 目錄下), 並放置於 d:\tomcat\bin 內(原來目錄內的檔案是 32 bits 版) http://apache.cdpa.nsysu.edu.tw/tomcat/tomcat- connectors/native/1.1.20/binaries/win64/x64/tcnative- 1.dll 啟動後的 ” 命令提示字元 ” 視窗,可用於除錯用!

14 14 迴圈

15 15 迴圈 假設使用者需要連續讀取 10/100/N 個整數 System.out.print(“ 請輸入一個整數 ”); number = scanner.nextInt( ); System.out.println(number); … // 重複 10/100/N 次 迴圈的設計允許程式執行相同的(或者類 似的)程式碼多次。 – 從需求中找出 pattern 是訓練的重點

16 16 迴圈 Java 支援三種迴圈語法: –for –while –do-while

17 17 for 敘述 for( 宣告並初始化 counter; for 執行的條件 ; 改變 counter 的值 ) 區塊敘述 區塊敘述跟之前的 if-else 用法相同,它可以是一個敘述, 或者是由一對大括號( {} )包起來的一個或一個以上的敘述

18 18 for 敘述 使用者讀取 10 個(或者更多)整數 System.out.print(“ 請輸入一個整數 ”); number = scanner.nextInt( ); System.out.println(number); … // 重複 10 次 for(int i=0; i<10; i++) { System.out.print(“ 請輸入一個整數 ”); number = scanner.nextInt( ); System.out.println(number); } 改為

19 19 for 敘述 i=1 System. out. print( “ 請輸入一個整數 ” ); number=scanner. nextInt( ); System. out. println(number); true i++ ; i <=10

20 20 範例 (for 迴圈 ) 請把 1 到 20 (或者一個更大的數字,例如 10000 )整數加總起來 for 迴圈 int sum = 0; sum = sum + 1; sum = sum + 2; sum = sum + 3; … // 中間過程略過不寫 sum = sum + 20; int sum = 0; for(int i=1; i<=20; i++) sum = sum + i; 跟剛剛直接把程 式碼放到迴圈內 不一樣,必須作 一點轉換!

21 21 練習題 請將 1 到 100 的所有偶數相加,並求其總 和。 – 請將 x 到 y 的所有偶數相加,並求其總和。 – 若使用者輸入的 y 值小於 x ,需要特別處理嗎? 請將 1 到 100 的所有奇數相加,並求其總 和。 請將 5 、 10 、 15 、 … 、 100 的所有整數相加, 並求其總和。

22 22 範例 (for 迴圈 )

23 23 範例 :求法 1

24 24 範例 (for 迴圈 ) 完成第一個數學式子的 for 迴圈 double sum = 0.0; for (int i=1;i<=21;i+=4) { sum = sum + 1.0/i; } 完成第二個數學式子總和的 for 迴圈如下 for (int i=3;i<=19;i+=4) { sum = sum - 1.0/i; } ( 求法 1)

25 25 範例 (for 迴圈 ) 兩個 for 整理在一起 ( 求法 1) double sum = 0.0; for (int i=1;i<=21;i+=4) { sum = sum + 1.0/i; } for (int i=3;i<=19;i+=4) { sum = sum - 1.0/i; } ( 求法 1)

26 26 範例 (for 迴圈 ) double sum = 0.0; for (int i=1;i<=n;i+=2) { // 必要的程式碼 } if (i 是奇數項 ) sum = sum + 1.0/i; else // i 是偶數項 sum = sum - 1.0/i; double sum = 0.0; for (int i=1;i<=n;i+=2) { if (i % 4 ==1) // i 是奇數項 sum = sum + 1.0/i; else // i 是偶數項 sum = sum - 1.0/i; } ( 求法 2)

27 27 巢狀迴圈( Nested Loops ) 巢狀迴圈指的是一個迴圈敘述內包含一個 以上的迴圈 – 外迴圈( outer loop ) : outer loop 內可包含多 個 inner loops – 內迴圈( inner loop ) : inner loop 還可以包含 inner loop int sum = 0; for (int i=1;i<=5;i++) { // outer for (int j=1;j<=5;j++) // inner sum = sum + i * j; }

28 28 範例 1 ( 巢狀迴圈 )

29 29 範例 1 ( 巢狀迴圈 ) int sum = 0; for (int i=1;i<=5;i++) { for (int j=1;j<=5;j++) sum = sum + i * j; }

30 30 範例 2 ( 巢狀迴圈 )

31 31 範例 2 ( 巢狀迴圈 ) int sum = 0; int i, j; for (i=1; i<=5; i++) { for (j=1; j<=i; j++) sum = sum + i * j; }

32 32 練習題 試求

33 33 範例 3 ( 巢狀迴圈 ) 分析問題

34 34 範例 3 ( 問題分析 )

35 35 範例 3 ( 巢狀迴圈 ) int n = 7; // n 也可以是一個方法的參數 for (int i=1; i<=n; i++) { for (int j=1; j<=n-i+1; j++) System.out.print(“*”); // 總共印出 n-i+1 個星號 System.out.println(“”); // 跳行 }

36 36 while 敘述 while 的語法如下 利用 while 從 1 加到 20 for(; 繼續條件 ;) 區塊敘述 while( 繼續條件 ) 區塊敘述 也就是

37 37 練習題 請找出其他的方式來求得小於 100 的最大 的 7 的倍數 – 提示:簡單的算術 – 提示:遞減

38 38 break 敘述 break 的語法如下 –break [ 標籤 ]; 例如 : 一旦 x 的值超過 100 我們就要跳出 (也就是 break )迴圏的執行 if(x >= 100) break;

39 39 if(x >= 100) { x = x – 7; break; }

40 40 break 只能跳出一層迴圈 break 敘述 不要執行這個 範例,會造成 無窮迴圈。

41 41 continue 敘述 continue 的語法如下 –continue [ 標籤 ]; –continue 之後的敘述不再執行,而逕自執行下 一個迴圈 – 範例:假設我們像 TestBreak3.java 一樣,希 望能夠完成九九乘法表,但是 5 的那一列卻不 想列印出來 ( 程式如下頁 )

42 42 public class TestContinue1 { public static void main(String[] args) { for(int i = 1; i <= 9; i++) { if(i == 5) { System.out.println(); continue; } for(int j = 1; j<=9; j++) { System.out.format("%4d", i * j); } System.out.println(); } continue 敘述

43 43 練習題 請利用 while 迴圈和 break 來找尋小於 100 的最大的 7 的倍數。 – 提示:請從 99 開始找,找到的第一個 7 的倍 數就是最大的

44 44 do-while 敘述 do-while 迴圈的語法如下 do { 區塊敘述 } while ( 繼續條件 ); 讓我們還是以從 1 加到 20 的總和來說明 do-while 的使 用方式。以下程式碼是利用 do-while 來加總 int i = 1, sum = 0 do { sum = sum + i; i++; } while (i <= 20);

45 45 for 、 while 、或者 do-while 三種迴圈的敘述可以互相替代。 如果執行迴圈之前可以確定迴圈執行的次 數(即 counter 數),建議使用 for 敘述; 反之,若無法確定,則建議使用 while 或 者 do-while 敘述。 若執行迴圈之前無法確定迴圈執行的次數, 而且讀者確定第一次迴圈一定會執行,則 建議使用 do-while 敘述;反之,請使用 while 敘述。

46 46 常見的錯誤 除了 10 之外,加總 1 到 20 的整數 忘了調整迴圈控制變數

47 MySQL Workbench 管理 MySQL 的最佳介面其實是經由指令 但是,還是很多初學者喜歡圖形介面 –MySQL 提供了一套圖形介面的軟體,讓使用者可以 輕易的使用資料庫,這套軟體就是 MySQL Workbench – 下載點: http://dev.mysql.com/downloads/workbench/5.2.htm l http://dev.mysql.com/downloads/workbench/5.2.htm l 我還是建議 zip 版,避免把作業系統搞得又慢又複雜 若在 XP 下安裝 zip 版,你必須先安裝 Microsoft.NET Framework 4 Client Profile ( 獨立安裝程式 )

48 MySQL Workbench

49

50

51

52

53

54

55

56

57 Table: student

58

59

60

61 Table: course

62 Table: select ( 選課 )

63

64 Table: student ( 資料 )

65 Table: course ( 資料 )

66 Table: select ( 資料 )

67 SQL Examples 請顯示每一位學生修課的總學分數 –select name, sum(credit) –from student, course, selection –where student.id = selection.id and – course.cid = selection.cid –group by student.id 請顯示每一科目,目前的選課人數 –select cname, count(*) –from course, selection –where course.cid = selection.cid –group by course.cid

68 SQL Examples 若需要經常得知目前選課人數,一般的做法會產生 一個 view ,以便於跟其他 SQL 語法合用(例如, 顯示是否額滿) –create view numberofstudents as –select course.cid as cid, count(*) as number –from course, selection –where course.cid = selection.cid –group by course.cid 是否額滿( 30 也可以從其他 table/view 來) –select cname, if(numberofstudents.number > 30, ' 額滿 ', '') –from course, numberofstudents –where course.cid = numberofstudents.cid


Download ppt "補充教材. 主題 JDK 與 Tomcat 5.5.x 的安裝 迴圈 MySQL Workbench."

Similar presentations


Ads by Google