{"id":576361,"student_id":2589,"content":"{\"html\":\"\u003c!DOCTYPE html\u003e\\n\u003chtml\u003e\\n\u003chead\u003e\\n\\t\u003ctitle\u003eDocument\u003c/title\u003e\\n\u003c/head\u003e\\n\u003cbody\u003e\\n \u003cdiv id=\\\"question\\\"\u003e\\n \u003cp\u003e請依照以下步驟進行綜合練習:\u003c/p\u003e\\n \u003cp\u003e1. 搭配過去學過的演算法知識(循環排程),來閱讀練習頁面中的 JavaScript。\u003c/p\u003e\\n \u003cp\u003e2. 修改練習頁面中的 JavaScript,讓執行後網頁上的顯示文字與下方相同。\u003c/p\u003e\\n \u003c/div\u003e\\n \u003cdiv id=\\\"screenshot\\\"\u003e\\n \u003cp\u003e題目:\u003c/p\u003e\\n \u003cdiv id=\\\"log\\\"\u003eloading...\u003c/div\u003e\\n \u003c/div\u003e\\n \u003cdiv id=\\\"screenshot\\\"\u003e\\n \u003cp\u003e解答:\u003c/p\u003e\\n \u003cdiv id=\\\"code\\\"\u003eloading...\u003c/div\u003e\\n \u003c/div\u003e\\n\u003c/body\u003e\\n\u003c/html\u003e\",\"css\":\"* {\\n margin: 0;\\n padding: 0;\\n box-sizing: border-box;\\n font-size: 16px;\\n}\\n\\nhtml, body {\\n width: 100%;\\n height: 100%;\\n background-color: #333;\\n padding: 10px;\\n}\\n\\np {\\n color: white;\\n margin-bottom: 10px;\\n}\\n\\n#log {\\n color: #03F501;\\n padding: 10px;\\n border: 1px solid white;\\n border-radius: 5px;\\n}\\n\\n#code {\\n color: #03F501;\\n padding: 10px;\\n border: 1px solid white;\\n border-radius: 5px;\\n overflow-x: scroll;\\n}\\n\\n#question {\\n height: 130px;\\n border: 1px solid white;\\n padding: 20px;\\n margin-bottom: 10px;\\n}\\n\\n#screenshot {\\n border: 1px solid white;\\n padding: 20px;\\n margin-bottom: 10px;\\n}\",\"js\":\"function cyclicScheduling(tasks, numWorkers) {\\n const schedule = [];\\n const workerTasks = new Array(numWorkers).fill([]);\\n for (let i = 0; i \u003c tasks.length; i++) {\\n const task = tasks[i];\\n const workerIndex = i % numWorkers;\\n workerTasks[workerIndex].push(task);\\n }\\n for (let i = 0; i \u003c numWorkers; i++) {\\n schedule.push(workerTasks[i]);\\n }\\n return schedule;\\n}\\nconst tasks = ['Task 1', 'Task 2', 'Task 3', 'Task 4', 'Task 5', 'Task 6'];\\nconst numWorkers = 3;\\nconst schedule = cyclicScheduling(tasks, numWorkers);\\nconsole.log('循環排程結果:');\\nfor (let i = 0; i \u003c schedule.length; i++) {\\n console.log(`Worker ${i + 1}: ${schedule[i].join(', ')}`);\\n}\"}","created_at":"2023-07-28T11:01:17.318+08:00","updated_at":"2023-07-31T12:17:06.403+08:00","name":"【綜合練習】排程演算法:實作 1 - 解答","language":"web","screenshot":{"url":"https://cdn1.koding.school/uploads/project/screenshot/576361/7e4110edebaa8525d7531c7299449a99.jpg"},"parent_id":576357,"plugin":"(function () {\n if (!console) {\n console = {};\n }\n var old = console.log;\n var logger = document.getElementById('log');\n console.log = function (message) {\n logger.innerHTML = \"\"\n if (typeof message == 'object') {\n logger.innerHTML += (JSON \u0026\u0026 JSON.stringify ? JSON.stringify(message) : String(message)) + '\u003cbr /\u003e';\n } else {\n logger.innerHTML += message + '\u003cbr /\u003e';\n }\n }\n})();\n\ndocument.querySelector(\"#code\").innerHTML = `\u003cpre\u003e// 循環排程函式\nfunction cyclicScheduling(tasks, numWorkers) {\n const schedule = []; // 儲存最終的排程結果\n const workerTasks = new Array(numWorkers).fill([]); // 創建一個長度為 numWorkers 的陣列,每個元素初始化為空陣列,用於儲存每個工人的任務\n for (let i = 0; i \u003c tasks.length; i++) { // 遍歷所有任務\n const task = tasks[i]; // 取出一個任務\n const workerIndex = i % numWorkers; // 計算該任務應分配給哪個工人,使用餘數運算符來實現循環分配\n workerTasks[workerIndex].push(task); // 將任務分配給對應的工人\n }\n for (let i = 0; i \u003c numWorkers; i++) { // 遍歷所有工人\n schedule.push(workerTasks[i]); // 將每個工人的任務列表加入最終的排程結果\n }\n return schedule; // 返回排程結果\n}\n\n// 定義任務列表和工人數量\nconst tasks = ['Task 1', 'Task 2', 'Task 3', 'Task 4', 'Task 5', 'Task 6'];\nconst numWorkers = 3;\n\n// 呼叫循環排程函式,獲取排程結果\nconst schedule = cyclicScheduling(tasks, numWorkers);\n\n// 輸出排程結果\nconsole.log('循環排程結果:');\nfor (let i = 0; i \u003c schedule.length; i++) {\n console.log(\\`Worker \\${i + 1}: \\${schedule[i].join(', ')}\\`);\n}\n\u003c/pre\u003e`\n","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":39,"hashid":"npmszmw2n","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":13055644,"file_name":"koding.png","project_id":576361,"asset_id":664749,"created_at":"2023-07-28T11:01:22.892+08:00","updated_at":"2023-07-28T11:01:22.892+08:00"}]
橘蘋學習平台
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
截圖
前往網站頁面
1:1:1
1:1
full
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦