發表文章

目前顯示的是有「APCS觀念題」標籤的文章

想學好APCS?這篇可不能錯過!(實作題篇)

圖片
  APCS的觀念了解後,實作練習當然也不可少!  程式設計實作題 - 題型:共計 4 個題組,以撰寫完整程式或副程式計分。 - 檢測與計分方式:為單節次檢測 (測驗時間 140 分鐘),滿分 400 分 實作題例題 問題描述 一次考試中,於所有及格學生中獲取最低分數者最為幸運,反之,於所有不及格同學中,獲取最高分數者,可以說是最為不幸,而此二種分數,可以視為成績指標。請你設計一支程式,讀入全班成績(人數不固定),請對所有分數進行排序,並分別找出不及格中最高分數,以及及格中最低分數。當找不到最低及格分數,表示對於本次考試而言,這是一個不幸之班級,此時請你印出:「worst case」;反之,當找不到最高不及格分數時,請你印出「best case」。註:假設及格分數為 60,每筆測資皆為 0~100 間整數,且筆數未定。 輸入格式 第一行輸入學生人數,第二行為各學生分數(0~100 間),分數與分數之間以一個空白間格。每一筆測資的學生人數為 1~20 的整數。 輸出格式 每筆測資輸出三行。 第一行由小而大印出所有成績,兩數字之間以一個空白間格,最後一個數字後無空白; 第二行印出最高不及格分數,如果全數及格時,於此行印出 best case; 第三行印出最低及格分數,當全數不及格時,於此行印出 worst case。 範例一:輸入 10 0 11 22 33 55 66 77 99 88 44 範例一:正確輸出 0 11 22 33 44 55 66 77 88 99 55 66 (說明)不及格分數最高為 55,及格分數最低為 66。 範例二:輸入 1 13 範例二:正確輸出 13 13 worst case (說明)由於找不到最低及格分,因此第三行須印出「worst case」。 範例三:輸入 2 73 65 範例三:正確輸出 65 73 best case 65 (說明)由於找不到不及格分,因此第二行須印出「best case」。 評分說明 輸入包含若干筆測試資料,每一筆測試資料的執行時間限制(time limit)均為 2 秒, 依正確通過測資筆數給分。 針對實作題,我們分別使用 C、 Python 與 Java 來解題,語法如下:

想學好APCS?這篇可不能錯過!(觀念題篇)

圖片
要如何準備APCS的考試?該把握哪個程式語言?今天的解析千萬別錯過! 第一次考 APCS 程式語言,從哪個程式語言下手才會事半功倍呢? 若一開始就選到一個好上手、測驗時又好作答的程式語言,減少準備時間和學習負擔就是當然的啦,且勢在必行!本篇文章將以三款詢問度較高的應考語言 C , Java , Python 來做解析、比較,錯過就不再啦~ 此篇你將了解... 1. APCS 檢測的規範與基礎 2. C , Java , Python - 哪個語言適合解題? 先來了解一下檢測內容的基礎概念, APCS 的兩大題組 【觀念題】與【實作題】   程式設計觀念題 - 題型:單選題 (含題組),以運算思維、問題解決與程式設計概念測試為主。 - 檢測與計分方式:分兩節次檢測 (單節測驗時間60分鐘), 檢測分數為合併計分,滿分100分 觀念題例題#1 1. 右側程式碼,執行時的輸出為何? (A) 0 2 4 6 8 10 (B) 0 1 2 3 4 5 6 7 8 9 10 (C) 0 1 3 5 7 9 (D) 0 1 3 5 7 9 11 void main() { for (int i=0; i<=10; i=i+1) { printf ("%d ", i); i = i + 1; } printf ("\n"); } (出自 105 年 3 月 5 日,理論題第 15 題) 這一題主要要測驗的內容,是考驗考生是否了解 C 語言當中, for 迴圈 的結構。 以 for 迴圈來說,三的區段的值分別是初始值、條件值、運算值。 在這一題當中,第一次執行的時候 i 為 0 ,所以會先印出 0。 接下來,由於第四行 i=i+1 的關係, i 會變為 1 。但是執行迴圈時,回到了 for 的第三部分,這時候,還是另外一次的 i=i+1 ,所以 i 變為 2,然後進行驗證, i <= 10 根據這樣的執行邏輯, i 每印出一個就會 +2 一次,直到 i 超過 10 之後跳出迴圈。 Ans:所以會印出「0 2 4 6 8 10」 觀念題例題#2 2. 若以 f(2