{"id":112704,"student_id":1981,"content":"\r\n// 預設程式\r\nwhen(\"click\", function () {\r\n guess(prompt());\r\n});\r\n\r\n// 產生所有可能的組合\r\nvar list = [];\r\nfor (var i = 123; i \u003c= 9876; i++) {\r\n var t = i.toString();\r\n if (t.length \u003c= 3) {\r\n t = '0' + t;\r\n }\r\n if (t[0] != t[1] \u0026\u0026 \r\n t[0] != t[2] \u0026\u0026 \r\n t[0] != t[3] \u0026\u0026 \r\n t[1] != t[2] \u0026\u0026 \r\n t[1] != t[3] \u0026\u0026 \r\n t[2] != t[3]) {\r\n list.push(t);\r\n }\r\n}\r\n\r\n// 根據猜的結果移除不可能的選項\r\nwhile (list.length \u003e= 0) {\r\n var g = list[0]; // 取第一個來猜\r\n var result = guess(g);\r\n\r\n if (result.a == 4) break;\r\n\r\n for (var i = 0; i \u003c list.length; i++) {\r\n var d = diff(list[i], g);\r\n if (d.a != result.a || d.b != result.b) {\r\n list.splice(i, 1);\r\n }\r\n }\r\n}\r\n\r\n// 判斷兩組相似,返回 a、b\r\nfunction diff(num1, num2) {\r\n var a = 0;\r\n var b = 0;\r\n for (var i = 0; i \u003c 4; i++) {\r\n var idx = num1.indexOf(num2[i]);\r\n if (idx != -1) {\r\n if (idx == i) {\r\n a++;\r\n } else {\r\n b++;\r\n }\r\n }\r\n }\r\n return { a: a, b: b }\r\n}\r\n","created_at":"2019-12-07T14:55:46.607+08:00","updated_at":"2019-12-07T23:38:33.855+08:00","name":"1A2B 解題","language":"javascript","screenshot":{"url":"https://cdn9.koding.school/uploads/project/screenshot/112704/7963facb186d9a9e327a75e92b4403fc.jpg"},"parent_id":2,"plugin":"setBackdrop('black');\n\nvar guess = (function () {\n\n var answer = ''; // 正確答案\n var logs = []; // 記錄玩家所猜的數字與結果\n\n // 產生答案\n var numbers = '0123456789';\n for (var i = 0; i \u003c 4; i++) {\n var rand = Math.floor(numbers.length * Math.random());\n answer += numbers[rand];\n numbers = numbers.slice(0, rand) + numbers.slice(rand + 1);\n }\n\n function guess(num) {\n var a = 0;\n var b = 0;\n for (var i = 0; i \u003c 4; i++) {\n var idx = answer.indexOf(num[i]);\n if (idx != -1) i == idx ? a++ : b++;\n }\n logs.unshift({num: num, a: a, b: b});\n return { a: a, b: b }\n }\n\n forever(function(){\n for (var i=0; i\u003clogs.length \u0026\u0026 i\u003c100; i++) {\n var l = logs[i];\n var s = `${logs.length - i}. ${l.num} ${l.a}A${l.b}B`;\n // 補上對齊用的空格\n while(s.length \u003c 15) s = ' ' + s;\n print(s, 30, 20 + 30*i, l.a == 4 ? 'gold' : 'white', 25, 'monospace');\n }\n });\n\n return guess;\n\n})();","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":68,"hashid":"882s9n28","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":1924526,"file_name":"0.png","project_id":112704,"asset_id":169471,"created_at":"2019-12-07T15:07:59.971+08:00","updated_at":"2019-12-07T15:07:59.971+08:00"},{"id":1924527,"file_name":"1.svg","project_id":112704,"asset_id":169472,"created_at":"2019-12-07T15:07:59.978+08:00","updated_at":"2019-12-07T15:07:59.978+08:00"},{"id":1924528,"file_name":"2.png","project_id":112704,"asset_id":169473,"created_at":"2019-12-07T15:07:59.983+08:00","updated_at":"2019-12-07T15:07:59.983+08:00"},{"id":1924529,"file_name":"0.wav","project_id":112704,"asset_id":169474,"created_at":"2019-12-07T15:07:59.988+08:00","updated_at":"2019-12-07T15:07:59.988+08:00"},{"id":1924530,"file_name":"1.wav","project_id":112704,"asset_id":169475,"created_at":"2019-12-07T15:07:59.993+08:00","updated_at":"2019-12-07T15:07:59.993+08:00"}]
橘蘋學習平台
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
截圖
1:1:1
1:1
full
幫助
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦