[問題] 線上批改系統

看板MATLAB作者 (我是盆栽)時間11年前 (2012/11/01 03:55), 編輯推噓3(305)
留言8則, 5人參與, 最新討論串1/1
各位好, 最近須幫指導教授寫一個matlab線上考試系統, 老師希望能夠即時批改,告訴考生這題答對與否。 但目前卡在如下功能: 因為怕學生丟過來的code有無窮迴圈, 所以想要寫個計時器, 若運算超過20秒則視為他跑進無窮迴圈, 就結束他的運算。 剛剛試了一下用timer,本有這個想法: 假設f為學生寫的函數, 設兩個timer,一個跑f,一個在20秒後會把跑f的timer給stop掉, 結果那個跑f的timer一進f的無窮迴圈後matlab就什麼指令都聽不進去了。 目前還沒想到方法,也不確定matlab的這種線上批改模式是否真的可行... 煩請各位提供意見!謝謝! -- 專家總是叫我們不要吃漢堡這種垃圾食物, 要多吃營養的食物, 例如白麵包、芝麻、生菜、蕃茄、酸黃瓜、起司和牛肉。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.203.105

11/01 14:15, , 1F
認真的助教XD
11/01 14:15, 1F

11/03 08:04, , 2F
你講的應該是類似ACM系統
11/03 08:04, 2F

11/03 12:13, , 3F
是的 是想要開發類似的功能 但想到防止無窮迴圈這點
11/03 12:13, 3F

11/03 12:13, , 4F
就不知如何下手..
11/03 12:13, 4F

11/05 22:02, , 5F
這要multiprocess或multithread吧
11/05 22:02, 5F

11/05 22:03, , 6F
我不確定matlab支不支援..
11/05 22:03, 6F

11/07 22:32, , 7F
我自己有一個用C程式去叫matlab起來的範例
11/07 22:32, 7F

11/07 22:32, , 8F
不過TLE時,會把所有的matlab.exe都給kill掉
11/07 22:32, 8F
文章代碼(AID): #1GaO93c7 (MATLAB)