2013年2月8日 星期五

TQC+ 物件導向程式語言 Java 6 解題秘笈

TQC+ JAVA6 物件導向程式語言 認證
這是官方網站的介紹:連結

物件導向程式語言 (Java)
使用軟體代號應考時間測驗內容合格成績報名費
Java 6PJP100分鐘操作題共6題70分1500
  • 本認證採操作題,總分為100分。
  • 操作題第一至六類各考一題共六大題,第一大題至第五大題每題10分,第六大題每題50分,小計100分。
  • 於認證時間100分鐘內作答完畢並存檔,成績加總達70分(含)以上者該科合格。

相關書訊(碁峰出版):連結


第一類:基本認識 LINK
101字串列印、102單位換算、103計算平均值、104距離計算、105存錢筒、106數學函數、107運動成績、108覆載方法、109變數範圍、110圖形面積

第二類:條件判斷式 LINK
201分數篩選、202比較大小、203判斷奇偶數、204公倍數計算、205倍數判斷、206及格分數、207三角形邊長判斷、208分級制度、209象限座標、210鍵盤字元判斷

第三類:迴圈 LINK
301整數連加、302巢狀迴圈、303完美數、304餐點費用、305迴圈階乘計算、306迴圈次方計算、307迴圈最大公因數、308電腦週邊費用總計、309迴圈倍數判斷、310迴圈正偶數相加

第四類:遞迴程式設計 LINK
401遞迴階乘計算、402尾端遞迴階乘計算、403尾端遞迴次方計算、404遞迴最大公因數、405遞迴函數、406遞迴字串計算、407尾端遞迴計算總和、408遞迴字串反向、409遞迴字串移除、410遞迴字串替換

第五類:陣列設計能力 LINK
501陣列計算、502浮點數計算、503矩陣之和、504費氏數、505反轉陣列、506三維陣列元素之和、507停車費用計算、508泡泡排序法、509選擇排序法、510二分搜尋法

第六類:物件導向程式設計與例外處理
601汽車零件設計
602電腦零件設計
603冰品計價系統
604銀行理財帳戶
605成績資訊系統
606薪資計算
607電腦銷售業績
608食物熱量計算
609堆疊擴充
610員工薪資制度

本篇教學的程式碼皆由作者群編輯,歡迎轉貼本教學,但請全文轉貼,謝啦~

17 則留言:

  1. 抱歉,我想問一下~我去買認證指南哪本書中說考試要用JEdit作為編譯環境,是真的一定要嗎@@? 因為我現在安裝起來總覺得不是很好用...

    回覆刪除
  2. 不好意思這麼晚回你@@
    考試時,可先和考場協調需用哪套開發工具
    只是要注意一點,考試時,Jedit相容性相對穩定
    考試系統會鎖一些功能((Eclipse會感覺左鍵會連點,要注意些
    祝你考試順利

    回覆刪除
    回覆
    1. 1.那如果單純安裝jdk在cmd的環境下編譯呢? 如果這個不行的話我可能比較傾向Eclipse
      2.jdk要在現場設定還是本身就內建好了?
      3.昨天努力用了一下JEdit ,但除了字形大小和背景顏色又調整成我要的之外,我還是不知道要
      怎麼編譯我的程式@@ 線上的help似乎找不到相關用法(還是我沒看到...)

      刪除
    2. JDK建議提早至考場看看考場狀況(可能會沒安裝,要自己安裝),基本上考場大致上會有Eclipse,因為有TQC+的Android考試。
      可以使用cmd來編譯,亦可用Eclipse來編譯,僅需將class files放到指定位置即可。

      刪除
    3. 另外想問作答時編譯好的.class 檔放在ANS.csf的目錄底下即可,不需要把那個.class檔再放到STD.csf的目錄底下吧?

      刪除
    4. 對~他僅會讀取ANS.csf的資料夾,但記得要改class名稱原本應該為JPDxx,要改成JPAxx,不過也要看當下考試的規定,要改成什麼檔名。

      刪除
    5. 這幾天用了一下光碟的操作練習系統,是否寫程式時都要依照它放在ANS.csf中txt給的程式架構去走才給分?(因為它會把一些地方先寫出來)?

      刪除
    6. 考試時,他會給你部分的code,但是不能保證跟題庫一樣,但是給的code量是可以在總時間100分鐘內作答完畢的

      刪除
  3. 做第六類練習時遇到一些問題...
    1. 打開了練習系統要做601, 在C:\ANS.csf\JP06 底下產生了分別是五個題目的資料夾,但因為我現在用cmd編譯, 譬如說我要在第一個題目目錄底下編譯, 於cmd介面上輸入cd C:\ANS.csf\JP06\JP06_1 , 結果都會出現"系統找不到指定路徑" 不知是不是因為cmd不接受底線字元??

    2. 假設我現在做題目二,但寫code時需要用道題目一的部分程式碼,能否直接複製過去? 引入套件的方式似乎只能在同一個目錄下使用,但我不知道如何去引入不同目錄的套件,你寫的電子書似乎直接把上一題的程式碼都拿過去用,考試直接這樣可以吧!?

    謝謝您的回答><

    回覆刪除
    回覆
    1. cmd 是會接受底線的,我想您是JAVA環境沒有設定完善,可以參考此篇來設定JAVA環境。

      題目二的程式碼是可以直接將題目一的程式碼貼上去使用,我撰寫的電子書的解答便是該題的直接解答,若有疏失還不吝指教 ^_^

      刪除
    2. 針對我第一個問題,發表一下我測試的結果

      1.應該不是我環境的設定問題,即使我在其它儲存槽使用相同名稱JP06_1的目錄,cmd 仍然可以跑到這個目錄底下

      2.很吊詭的是,我刻意在C:\ANS.csf\JP06這個目錄底下新增一個JP06_1的目錄(也就是刻意和操作系統給的資料夾名稱相同), 竟然可以成功@@ 而且cmd 也可已進入我自己建立的目錄中, 但我若去進入操作系統給的JP06_1, 當我在cmd輸入 cd C:\ANS.csf\JP06\JP06_1,就會發生系統找不到指定路徑

      3. 其實在做第2點的最後 個動作時,路徑我是用複製在cmd介面貼上的, 但每次貼上最後一個數字1都不會跑出來,即使我自己補上也是會出現系統找不到指定路徑

      刪除
    3. 建議您,在編輯或編譯檔案時,可以將.java的檔案,拿到其他地方,如桌面、D槽等cmd好找到的地方,編譯完成後,再將class檔案放回去指定資料夾。

      刪除
  4. 關於讀入資料檔的一些問題...

    雖然我有在書上學過一些IO, 但書中的範例要嗎一次都只讀一個字元或一整行字串, 可是我一直不知道要怎麼直接讀入一個字串或整數之類的... 在你的電子書中(601 題目四), 我看到你如此的寫法

    Scanner scn = null;

    try{
    // 檔案位置請自行放置
    scn = new Scanner(new File("D:\\dada.txt"));
    }
    catch(FileNotFoundException e){
    System.out.println("File not found!");
    System.exit(0);
    }

    // 以下以下只寫重點.....

    boolean si = true;
    do{
    if(scn.hasNext()){
    ...
    }
    ...
    }
    while(si);

    很好奇,這樣的寫法是在哪本書上或是網站上學的@@ 感覺很多書沒有把IO講的很詳細, api中也沒有提供單純讀入一個無空白字串的方法,現在題目做到最後一部分就開始卡關><

    回覆刪除
    回覆
    1. 當初的I/O的概念也是跟老師學的,沒有特別從別的地方,關於您卡關的地方,請注意,題目裡面提供的檔案內的內容,大小寫是否跟code一樣。

      刪除
  5. 感謝大大無私奉獻,要不要考慮出書 要 print出來也不便宜

    回覆刪除
    回覆
    1. 謝謝您的支持,由於我手邊也還有不少專案在忙,而且書中有些解法不算完美,暫沒考慮要出書xD
      而且不出版的話,就可以免費供大家下載學習,最近比較想把C語言那本的疏漏先更正,畢竟剛寫完,有不少bug呢QQ

      刪除
  6. 感謝你的分享~~~

    回覆刪除