看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《Piner (追憶似水年華)》之銘言: : 我正在準備醫官考試 最頭大的是計算機概論 : 沒有一套教材完整的介紹 : 我碰到這個問題 不知道這是什麼語言 無從查起 : X=0 : For (i=0;i<5;i++) : X=X+3 : 答案是輸出等於15 請問這是什麼語言 怎麼解答呢 : 如果不合版規 版主砍掉沒關係 也請大家見諒 看起來很像C, 不過語法不完全一樣, 簡單解釋一下好了.... 大部份看到 A = B, 和數學式意思不同, 表示把B的值assign到A去.... 所以 X=0 代表把X變數的值設成0 for代表迴圈, 意思是接下來的程式要執行多次.... 第一個 ; 前代表初始條件.... 第二個 ; 前代表持續這個迴圈的條件.... (也許有的程式語言代表終止條件, 所以可能要查清楚) 第二個 ; 後代表迴圈內的東西每執行一次後要做的事.... i++ 在C語言是 i = i + 1的意思, 也就是使i的值+1 X=X+3緊接在For後面, 所以就是上面For迴圈要做的事.... 所以展開來看: i=0時: X=X+3 => X = 0 + 3 = 3 (=>後面我寫的是數學) i=1時: X=X+3 => X = 3 + 3 = 6 (....以此類推....) 最後i=4時, X值為15; i=5時, 因為i沒有小於5, 所以結束.... 得到最後答案是15.... == 如果題目沒有說明是什麼語言, 那其實有點糟糕~_~ 如果題目有說是C語言, 那麼題目列的程式碼略有錯誤.... 不然就是你沒有照原本的文字打上來@_@" -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.174.98
Piner:感謝!隔行如隔山!題目真的就是這樣 才不知道GOOGLE什麼... 09/18 00:14
Piner:解決一個了!謝謝! 09/18 00:14
james732:看起來像是類似C的虛擬碼...? 09/18 00:21
Piner:那 i=1,j=2,k=3,m=4 j*=k=m+5+i 答案j=20 這是怎麼算的? 09/18 00:23
VictorTom:a+=b 就是 a=a+b; a*=b 就是 a=a*b; 以此類推.... 09/18 00:27
Piner:謝謝! 09/18 00:28
VictorTom:j*=k=m+5+i => 原則上 = 從右邊拆解回來, 會變成.... 09/18 00:28
VictorTom:k=m+5+i => k = 10; j*=k => j = 2 * 10 = 20. 09/18 00:29
Piner:瞭解了!謝謝解答! 09/18 00:30
VictorTom:的確看起來是像C的虛擬碼@_@" 09/18 00:30
VictorTom:話說, 這部份分數很重嗎??如果完全不懂程式, 投資在這邊 09/18 00:31
VictorTom:好像報酬率不高@_@" 總不是請你去買的C語言入門書看個前 09/18 00:31
VictorTom:面幾分之幾吧XD 09/18 00:31
hilorrk:只有我覺得醫官計概應該不會考程式嗎|| 09/18 00:32
Piner:我考試都會先看一遍 之前有自己玩C 早就忘光了..... 09/18 00:34
Piner:當然每一種程式都要通的話是不可能的事情 雖程式是我的興趣 09/18 00:35
VictorTom:我不知道考醫官是怎樣的考試, 但以前當兵考預官是有幾題 09/18 00:43
VictorTom:程設題沒錯, 所以考計概對我們資工系的有點爽XD 09/18 00:43
Piner:都沒有我的專科>.< 09/18 00:47
shiratori:V大真熱心 推一個 09/18 02:46