{"id":63149,"student_id":1587,"content":"// 預設程式\n// noprotect // 此行必須寫\nwhen(\"click\", function () {\n guess(prompt());\n});\n\nvar list = []; //所有可能的字串(不重複)\n\nfor (var i = 123; i \u003c= 9876; i++) {\n n = i.toString(); //n 為字串、i 為數字\n if (n.length \u003c 4) {\n n = \"0\" + n;\n }\n if (n[0] != n[1] \n \u0026\u0026 n[1] != n[2] \n \u0026\u0026 n[2] != n[3] \n \u0026\u0026 n[0] != n[2] \n \u0026\u0026 n[1] != n[3] \n \u0026\u0026 n[0] != n[3]) {\n list.push(n);\n }\n}\n// console.log(list);\n\n\n// whlie loop 的 () 內是\"執行條件\"\n\nwhile(list.length \u003e=0){\n var g = list[0];\n var result = guess(g);\n // console.log(\"result: \"+result);\n console.log(\"g: \"+g);\n \n if (result.a == 4) break ;\n for (var i = 0; i \u003c list.length; i++) {\n var df = diff(g,list[i]);\n if (df.a != result.a || df.b != result.b) {\n list.splice(i,1);\n }\n }\n console.log(list);\n \n \n}\n\n\n // 判斷兩組相似,返回 a、b\nfunction diff(num1, num2) {\n var a = 0;\n var b = 0;\n\n for (var i = 0; i \u003c 4; i++) {\n var idx = num1.indexOf(num2[i]);\n if (idx == i) {\n a++;\n } else if (idx != -1) {\n b++;\n }\n }\n\n return {\n a: a, b: b\n };\n\n //測試:在主控台輸入 diff(\"某數\", \"某數\")\n // diff(\"\", \"\")\n}","created_at":"2019-04-20T10:47:17.899+08:00","updated_at":"2019-11-10T15:41:15.999+08:00","name":"1A2B 解題 副本","language":"javascript","screenshot":{"url":"https://cdn5.koding.school/uploads/project/screenshot/63149/42b896c0d53feab1f619a7278b32de4c.jpg"},"parent_id":33939,"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":109,"hashid":"2pds3npr","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":1109067,"file_name":"1.wav","project_id":63149,"asset_id":74916,"created_at":"2019-04-20T10:47:17.905+08:00","updated_at":"2019-04-20T10:47:17.905+08:00"},{"id":1109068,"file_name":"0.wav","project_id":63149,"asset_id":74915,"created_at":"2019-04-20T10:47:17.906+08:00","updated_at":"2019-04-20T10:47:17.906+08:00"},{"id":1109069,"file_name":"2.png","project_id":63149,"asset_id":74914,"created_at":"2019-04-20T10:47:17.907+08:00","updated_at":"2019-04-20T10:47:17.907+08:00"},{"id":1109070,"file_name":"1.svg","project_id":63149,"asset_id":74913,"created_at":"2019-04-20T10:47:17.908+08:00","updated_at":"2019-04-20T10:47:17.908+08:00"},{"id":1109071,"file_name":"0.png","project_id":63149,"asset_id":74912,"created_at":"2019-04-20T10:47:17.909+08:00","updated_at":"2019-04-20T10:47:17.909+08:00"}]
橘蘋學習平台
我的作品
檢視專案頁
匯出
複製
匯入
刪除
下載 Android APP (APK)
截圖
繁中
简中
English
日本語
1:1:1
1:1
全寬
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦
用手機掃描下方 QRCode 進行安裝
或您也可以
下載 APK
到這台電腦