{"id":185940,"student_id":10,"content":"{\"html\":\"\u003c!DOCTYPE html\u003e\\n\u003chtml lang=\\\"en\\\"\u003e\\n\u003chead\u003e\\n \u003cmeta charset=\\\"UTF-8\\\"\u003e\\n \u003cmeta name=\\\"robots\\\" content=\\\"noindex, nofollow\\\"\u003e\\n \u003cmeta name=\\\"googlebot\\\" content=\\\"noindex, nofollow\\\"\u003e\\n \u003cmeta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1.0\\\"\u003e\\n \u003ctitle\u003eDocument\u003c/title\u003e\\n \u003clink rel=\\\"stylesheet\\\" href=\\\"https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css\\\"\u003e\\n \u003clink rel=\\\"stylesheet\\\" href=\\\"./index.css\\\"\u003e\\n \\n \u003cscript src=\\\"https://cdn.jsdelivr.net/npm/vue/dist/vue.js\\\"\u003e\u003c/script\u003e\\n \\n\u003c/head\u003e\\n\u003cbody\u003e\\n\\n \u003cdiv id=\\\"app\\\"\u003e\\n \u003cdiv class=\\\"navbar\\\"\u003e\\n \u003ch2\u003e試題{{index + 1}} (共{{exam.length}}題)\u003c/h2\u003e\\n \u003cspan\u003e剩餘時間 00:00:00\u003c/span\u003e\\n \u003c/div\u003e\\n \u003cdiv class=\\\"content\\\"\u003e\\n \u003cdiv class=\\\"p-4 content-description\\\"\u003e\\n \u003cpre\u003e{{current.description}}\u003c/pre\u003e\\n \u003c/div\u003e\\n \u003cdiv class=\\\"content-editors p-4\\\"\u003e\\n \u003c!-- 是非題 --\u003e\\n \u003cmy-true-or-false-exam \\n v-if=\\\"current.type === TRUE_OR_FALSE\\\"\\n :exam=\\\"current\\\"\\n \u003e\u003c/my-true-or-false-exam\u003e\\n\\n \u003c!-- 拖拉配對題 --\u003e\\n \u003cmy-drap-and-drop-exam\\n v-if=\\\"current.type === DROG_AND_DROP\\\"\\n :exam=\\\"current\\\"\\n \u003e\u003c/my-drap-and-drop-exam\u003e\\n\\n \u003c!-- 下拉選單題 --\u003e\\n \u003cmy-select-exam\\n v-if=\\\"current.type === SELECT\\\"\\n :exam=\\\"current\\\"\\n \u003e\u003c/my-select-exam\u003e\\n\\n \u003c!-- 單選題/多選題 --\u003e\\n \u003cmy-options-exam\\n v-if=\\\"current.type === OPTIONS\\\"\\n :exam=\\\"current\\\"\\n \u003e\u003c/my-options-exam\u003e \\n \u003c/div\u003e\\n \u003c/div\u003e\\n \u003cdiv class=\\\"footer d-flex justify-content-end\\\"\u003e\\n \u003cdiv class=\\\"p-2\\\"\u003e\\n \u003cbutton class=\\\"btn btn-lg btn-warning\\\" @click=\\\"toggleFullscreen\\\"\u003e\\n 進入/取消 全螢幕\\n \u003c/button\u003e\\n \u003c/div\u003e\\n \u003cdiv class=\\\"p-2\\\"\u003e\\n \u003cbutton class=\\\"btn btn-lg btn-primary\\\" @click=\\\"prev\\\" :disabled=\\\"isFirst\\\"\u003e\\n 上一題\\n \u003c/button\u003e\\n \u003c/div\u003e\\n \u003cdiv class=\\\"p-2\\\"\u003e\\n \u003cbutton class=\\\"btn btn-lg btn-primary\\\" @click=\\\"next\\\" :disabled=\\\"isLast\\\"\u003e\\n 下一題\\n \u003c/button\u003e\\n \u003c/div\u003e\\n \u003c/div\u003e\\n \u003c/div\u003e\\n\u003c/body\u003e\\n\u003c/html\u003e\",\"css\":\":root {\\n --navbar-height: 50px;\\n font-family: monospace;\\n}\\n\\nbody {\\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;\\n color: #555;\\n background-color: #eeeeee;\\n}\\n\\n#app {\\n position: absolute;\\n top: 5px;\\n left: 5px;\\n right: 5px;\\n bottom: 5px;\\n background-color: #eeeeee;\\n}\\n\\n#app .navbar {\\n position: absolute;\\n top: 0;\\n height: var(--navbar-height);\\n width: 100%;\\n \\n}\\n\\n#app .content {\\n position: absolute;\\n top: var(--navbar-height);\\n width: 100%;\\n height: calc(100vh - 10px - var(--navbar-height)*2);\\n box-sizing: border-box;\\n border: 2px solid #ccc;\\n background-color: #ffffff;\\n}\\n\\n#app .footer {\\n position: absolute;\\n bottom: 0;\\n height: var(--navbar-height);\\n width: 100%; \\n}\\n\\n.content .content-description {\\n border: 1px solid #ccc;\\n height: 40%;\\n width: 100%;\\n position: absolute;\\n top: 0;\\n overflow-y: scroll;\\n}\\n\\n.content .content-editors {\\n border: 1px solid #ccc;\\n height: 60%;\\n width: 100%;\\n position: absolute;\\n bottom: 0;\\n overflow-y: scroll;\\n}\\n\\n.drag_and_drop_select {\\n display: inline-block;\\n position: relative;\\n min-width: 100px;\\n min-height: 40px;\\n}\\n\\n.drag_and_drop_select \u003e span {\\n \\n}\\n\\n.drag_and_drop_select \u003e select {\\n position: absolute;\\n top: 0;\\n left: 0;\\n z-index: 1;\\n width: 15px;\\n height: 20px;\\n transform: translateY(-10px);\\n}\",\"js\":\"const OPTIONS = 'options' //選擇題\\nconst SELECT = 'select' //下拉選單題\\nconst TRUE_OR_FALSE = 'tureOrFalse' //是非題\\nconst DROG_AND_DROP = 'dragAndDrop' //配對題\\n\\nconst OPTION_SPLITER = '\u003c%==========%\u003e'\\nconst CONTENT_SELECTER = 'CONTENT_SELECTER'\\n\\nconst TYPES = { OPTIONS, SELECT, TRUE_OR_FALSE, DROG_AND_DROP }\\n\\nconst MODE_TEST = 'modeTest'\\nconst MODE_SHOW_RESULT = 'modeShowResult'\\nconst MODE_SHOW_ALL = 'modeShowAll'\\nconst A_TO_Z = 'ABCDEFGHIJKLMNOPQRSTUVWZYZ'\\n\\nVue.component('my-options-exam', {\\n template: `\\n \u003cdiv\u003e\\n \u003ch4\u003e回答區\u003c/h4\u003e\\n \u003cdiv v-for=\\\"option, index in exam.options\\\" class=\\\"p-2 my-1 alert\\\" :class=\\\"{'alert-danger': !checkOption(index)}\\\"\u003e\\n \u003cdiv class=\\\"d-inline-block align-top\\\"\u003e\\n \u003cinput type=\\\"checkbox\\\" :checked=\\\"exam.answer.includes(index)\\\" v-model=\\\"answer\\\" :value=\\\"index\\\"\u003e\\n \u003cspan class=\\\"px-2\\\"\u003e{{AZ[index]}}.\u003c/span\u003e\\n \u003c/div\u003e\\n \u003cpre class=\\\"d-inline-block m-0\\\"\u003e{{option}}\u003c/pre\u003e\\n \u003cp v-if=\\\"!checkOption(index)\\\"\u003e錯誤!\u003c/p\u003e\\n \u003c/div\u003e\\n \u003c/div\u003e\\n `,\\n props: ['exam'],\\n data () {\\n return {\\n AZ: A_TO_Z,\\n answer: JSON.parse(JSON.stringify(this.exam.answer)),\\n }\\n },\\n watch: {\\n exam(val, oldVal) {\\n this.answer = JSON.parse(JSON.stringify(this.exam.answer))\\n }\\n },\\n methods: {\\n checkOption(index) {\\n return this.exam.answer.includes(index) === this.answer.includes(index)\\n },\\n }\\n})\\n\\nVue.component('my-true-or-false-exam', {\\n template: `\\n \u003cdiv\u003e\\n \u003ch4\u003e回答區\u003c/h4\u003e\\n \u003cdiv class=\\\"alert\\\" v-for=\\\"option, index in exam.options\\\" :class=\\\"{'alert-danger': !checkOption(index)}\\\"\u003e\\n \u003cpre class=\\\"d-inline\\\"\u003e{{option}}\u003c/pre\u003e\\n \u003cinput type=\\\"radio\\\" :name=\\\"index\\\" value=\\\"yes\\\" :checked=\\\"exam.answer[index] == 'yes'\\\" v-model=\\\"answer[index]\\\"/\u003e\u003cspan\u003eYES\u003c/span\u003e\\n \u003cinput type=\\\"radio\\\" :name=\\\"index\\\" value=\\\"no\\\" :checked=\\\"!exam.answer[index] == 'no'\\\" v-model=\\\"answer[index]\\\"/\u003e\u003cspan\u003eNO\u003c/span\u003e\\n \u003cspan v-if=\\\"!checkOption(index)\\\"\u003e錯誤!\u003c/span\u003e\\n \u003c/div\u003e\\n \u003c/div\u003e\\n `,\\n props: ['exam'],\\n data () {\\n return {\\n AZ: A_TO_Z,\\n answer: JSON.parse(JSON.stringify(this.exam.answer))\\n }\\n },\\n watch: {\\n exam(val, oldVal) {\\n this.answer = JSON.parse(JSON.stringify(this.exam.answer))\\n }\\n },\\n methods: {\\n checkOption (idx) {\\n return this.exam.answer[idx] === this.answer[idx]\\n }\\n }\\n})\\n\\nVue.component('my-drap-and-drop-exam', {\\n template: `\\n \u003cdiv class=\\\"row\\\"\u003e\\n \u003cdiv class=\\\"col-6 border py-4\\\"\u003e\\n \u003ch4\u003e程式碼片段\u003c/h4\u003e\\n \u003ctemplate v-for=\\\"option, idx in exam.options\\\"\u003e\\n \u003ch5\u003e選項{{AZ[idx]}}\u003c/h5\u003e\\n \u003cpre class=\\\"alert alert-secondary p-2\\\"\u003e{{option}}\u003c/pre\u003e\\n \u003c/template\u003e\\n \u003c/div\u003e\\n \u003cdiv class=\\\"col-6 border py-4\\\"\u003e\\n \u003ch4\u003e回答區\u003c/h4\u003e\\n \u003cpre\u003e\\n \u003ctemplate v-for=\\\"line in exam.content\\\"\u003e\\n \u003cspan v-if=\\\"typeof line === 'string'\\\"\u003e\\n {{line}}\\n \u003c/span\u003e\\n \u003cspan v-if=\\\"typeof line === 'object'\\\" class=\\\"alert alert-success drag_and_drop_select\\\" :class=\\\"{'alert-danger': !checkOption(line.idx)}\\\"\u003e\\n \u003cspan\u003e{{exam.options[answer[line.idx]]}}\u003c/span\u003e\\n \u003cselect v-model=\\\"answer[line.idx]\\\" class=\\\"custom-select\\\"\u003e\\n \u003coption v-for=\\\"option, option_idx in line\\\" :value=\\\"option_idx\\\"\u003e\\n 選項{{AZ[option_idx]}}\\n \u003c/option\u003e\\n \u003c/select\u003e\\n \u003c/span\u003e\\n \u003c/template\u003e\\n \u003c/pre\u003e\\n \u003c/div\u003e\\n \u003c/div\u003e\\n `.replace(/ *\\\\n */g, ''),\\n\\n props: ['exam'],\\n\\n data () {\\n return {\\n AZ: A_TO_Z,\\n answer: JSON.parse(JSON.stringify(this.exam.answer))\\n }\\n },\\n watch: {\\n exam(val, oldVal) {\\n this.answer = JSON.parse(JSON.stringify(this.exam.answer))\\n }\\n },\\n methods: {\\n checkOption (idx) {\\n return this.exam.answer[idx] === this.answer[idx]\\n }\\n }\\n})\\n\\nVue.component('my-select-exam', {\\n template: `\\n \u003cpre\u003e\\n \u003ch4\u003e回答區\u003c/h4\u003e\\n \u003ctemplate v-for=\\\"(line, idx) in exam.content\\\"\u003e\\n \u003cspan v-if=\\\"typeof line === 'string'\\\"\u003e{{line}}\u003c/span\u003e\\n \u003cselect class=\\\"p-1 alert alert-success\\\" v-if=\\\"typeof line === 'object'\\\" v-model=\\\"answer[line.idx]\\\" :class=\\\"{'alert-danger': !checkOption(line.idx)}\\\"\u003e\\n \u003coption v-for=\\\"option, idx in line\\\" :value=\\\"idx\\\" :selected=\\\"idx == line.answer\\\"\u003e\\n {{option}}\\n \u003c/option\u003e\\n \u003c/select\u003e\\n \u003cspan class=\\\"px-2 text-danger\\\" v-if=\\\"!checkOption(line.idx)\\\"\u003e錯誤!\u003c/span\u003e\\n \u003c/template\u003e\\n \u003c/pre\u003e\\n `.replace(/ *\\\\n */g, ''),\\n\\n props: ['exam'],\\n \\n data () {\\n return {\\n answer: JSON.parse(JSON.stringify(this.exam.answer))\\n }\\n },\\n \\n watch: {\\n exam(val, oldVal) {\\n this.answer = JSON.parse(JSON.stringify(this.exam.answer))\\n }\\n },\\n \\n methods: {\\n checkOption (idx) {\\n return this.exam.answer[idx] === this.answer[idx]\\n }\\n }\\n})\\n\\nconst DATA = []\\nlet q = undefined\\n\\n// 1\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n在這個問題中需要你評估帶底線的文字以確定它是否敘述正確。\\n你編寫以下程式碼:\\nimport sys\\ntry:\\n file_in\\n open (\\\"in.txt\\\", 'r')\\n file_out\\n open(\\\"out.txt\\\", 'w+')\\nexcept IOError:\\n print(' HE', file_name)\\nelse:\\n i = 1\\n for line in file_in:\\n print(line.rstrip())\\n file out.write(\\\"line + str(i) + \\\": + line)\\n`\\nq.options = `\\n不需要改變。\\n${OPTION_SPLITER}\\n程式碼執行,但產生邏輯錯誤。\\n${OPTION_SPLITER}\\n程式碼將產生執行階段錯。\\n${OPTION_SPLITER}\\n程式碼將產生語法錯誤。\\n`\\nq.content = ``\\nq.answer = [0]\\nDATA.push(q)\\n\\n// 2\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\nTailspin Toys使用Python來控制它的新玩具:快樂小丑。這個程式有錯誤導致小丑沿著一個無限的国圈跑。\\n你已被雇用來為以下快樂小丑的程式碼除錯。其中包含的行號只是做為參考。\\n01 import math\\n02 # default motion for happy clown\\n03 power = True\\n04 move = 0\\n05 while (power):\\n06 if move == 0:\\n07 turnValue = math.pi / move\\n08 move += 5\\n09 else:\\n10 turnValue = 0\\n11 move = 0\\n在程式碼中存在哪個錯誤?\\n`\\nq.options = `\\n05行導致執行階段錯誤,因為運算式不完整。\\n${OPTION_SPLITER}\\n08行有語法錯誤因為+=是無效語法。\\n${OPTION_SPLITER}\\n05行有語法去錯誤,因為它應該讀取(power\\n${OPTION_SPLITER}\\n07行因為運算時除以零引起的執行階段錯誤。\\n`\\nq.content = ``\\nq.answer = [3]\\nDATA.push(q)\\n\\n// 3\\nq = {}\\nq.type = SELECT\\nq.description = `\\nRelecloud Virtual Learning 公司要求你對一些導致薪資單出現問題的程式碼除錯。他們要求你找到薪資單錯誤的來源。\\n\\n已經宣告了下列變數:\\n\\nemployee_pay = [15000, 120000, 35000, 45000]\\ncount = 0\\nsum = 0\\n\\n在以下的程式碼有二個錯誤:\\n\\nfor index in range (0, len(employee_pay) - 1)):\\n count += 1\\n sum += employee_pay[index]\\naverage = sum // count\\nprint(\\\"薪資總金額是:\\\", sum)\\nprint(\\\"平均薪資是:\\\", average)\\n\\n你應使用哪些程式碼來修復錯誤?回答時,請在回答區中選擇適當的程式碼片段。\\n\\n注意:每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\n(size(employee_pay)):\\n(size(employee_pay) - 1):\\n(len(employee_pay) + 1):\\n(len(employee_pay)):\\n${OPTION_SPLITER}\\nsum/count\\nsum**count\\nsum*count\\n`\\nq.content = `\\nfor index in range ${CONTENT_SELECTER}\\n count += 1\\n sum += employee_pay[index]\\naverage = ${CONTENT_SELECTER}\\nprint(\\\"薪資總金額是:\\\", sum)\\nprint(\\\"平均薪資是:\\\", average)\\n`\\nq.answer = {0: 3, 1: 0}\\nDATA.push(q)\\n\\n// 4\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你正在創建一個接受使用者輸入的程式,這個程式必須將輸入值轉為整數,如果輸入值不能轉為整數,程式碼必須正確處理該錯誤。\\n你要如何完成程式碼,回答時,請在回答區中選擇適當的程式碼片段。\\n`\\nq.options = `\\ntry:\\nelse:\\nexcept:\\nraise:\\nfinally:\\n${OPTION_SPLITER}\\ntry:\\nelse:\\nexcept:\\nraise:\\nfinally:\\n`\\nq.content = `\\nwhile True:\\n ${CONTENT_SELECTER}\\n x = int(input('請輸入一個數字:'))\\n break\\n ${CONTENT_SELECTER} ValueError:\\n print('這不是一個有效的數字,再試一次...')\\n`\\nq.answer = {0: 0, 1: 2}\\nDATA.push(q)\\n\\n// 5\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你編寫一個讀取資料檔案並列印檔案中每 行的函數。\\n你編寫以下的程式碼。其中包含的行號只是做為參考。\\n01 def read_file(file):\\n02 line = None\\n03 if os.path.isfile(file):\\n04 data = open (file, 'r')\\n05 for line in data:\\n06 print (line)\\n\\n當你執行該程式時,你會收到03行上的錯誤。\\n\\n導致錯誤的原因是什麼?\\n`\\nq.options = `\\n你需要導入 os 函數庫。\\n${OPTION_SPLITER}\\npath 物件中不存在isfile方法。\\n${OPTION_SPLITER}\\npath 方法並不存在os物件中。\\n${OPTION_SPLITER}\\nisfile 方法不接受一個參數。\\n`\\nq.content = ``\\nq.answer = [0]\\nDATA.push(q)\\n\\n// 6\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你在一個為AdventureWorks開發遊戲的国隊工作。\\n你需要编寫程式碼來産生一個隨機數來符合以下要求\\n數字是5的倍數。\\n最低的數字是5。\\n*最高的數字是100。\\n兩式碼片段將符合要求?每個正的答案都提供了一個院整的解決方案,選兩個。\\n`\\nq.options = `\\nfrom random import randint\\nprint(randint (0, 20) * 5) \\n${OPTION_SPLITER}\\nfrom random import randint\\nprint(randint (1, 20) * 5)\\n${OPTION_SPLITER}\\nfrom random import randrange\\nprint (randrange(5, 105, 5))\\n${OPTION_SPLITER}\\nfrom random import randrange\\nprint (randrange(0, 100, 5))\\n`\\nq.content = ``\\nq.answer = [1, 2]\\nDATA.push(q)\\n\\n\\n// 7\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你需要去编高程式碼來產生隨機浮點數,最小值是0.0,最大值是1.0。\\n你應該使用哪個語法?\\n`\\nq.options = `\\nrandom.randrange(0.0, 1.0)\\n${OPTION_SPLITER}\\nrandom.randrange()\\n${OPTION_SPLITER}\\nrandom.randint (0, 1)\\n${OPTION_SPLITER}\\nrandom.random()\\n`\\nq.content = ``\\nq.answer = [0]\\nDATA.push(q)\\n\\n// 8\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你正在開發一個線上遊戲的Python應用程式。\\n你需要創建符合以下條件的函數:\\n* ZA update_score\\n* 函數接收當前分數和一個值\\n* 函數將值添加到當前分數\\n* 函數返回新分數\\n你要如何完成程式碼?回答時,請在回答區中選擇適當的程式碼片段。\\n`\\nq.options = `\\nupdate_score\\ndef update_score\\nreturn update_score\\n${OPTION_SPLITER}\\n(current, value):\\n():\\n(current, value)\\n()\\n${OPTION_SPLITER}\\npass current\\nreturn current\\nreturn\\npass\\n`\\n\\nq.content = `\\n${CONTENT_SELECTER} ${CONTENT_SELECTER}\\n current += value\\n ${CONTENT_SELECTER}\\n`\\nq.answer = { 0: 1, 1: 0, 2: 1 }\\nDATA.push(q)\\n\\n// 9\\nq = {}\\nq.type = TRUE_OR_FALSE\\nq.description = `\\n你正在編寫一個函數,用於增加遊戲中的玩家得分。\\n該函數具有以下要求:\\n* 如果沒有為變數 points指定值,則points開始等於1。\\n* 如果變數 bounds是True ,那麼 points 必須倍。\\n\\n你編寫以下程式碼。其中包含的行號只是做為參考。\\n\\n01 def increment_score(score, bonus, points):\\n02 if bonus == True:\\n03 points = points * 2\\n04 score = score + points\\n05 return score\\n06 points = 5\\n07 score = 10\\n08 new_score = increment_score(score, True, points)\\n\\n針對下列每個敘述,如果該敘述是正確的就選擇Yes。否則請選擇No。\\n\\n注意每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\n為了符合要求,必須將01行更改為以下内容:\\ndef increment_score(score, bonus, points = 1):\\n${OPTION_SPLITER}\\n一旦使用預設值定義了任何參數,其右側的任何參數也必須使用默認值進行定義。\\n${OPTION_SPLITER}\\n假如 01行未更改 如果只用兩個參數呼叫函數則第三個參數的值將為 None.\\n${OPTION_SPLITER}\\n03行會修改宣告在06行中變數points 的值。\\n`\\nq.content = ``\\nq.answer = { 0: 'yes', 1: 'yes', 2: 'yes', 3: 'no' }\\nDATA.push(q)\\n\\n// 10\\nq = {}\\nq.type = TRUE_OR_FALSE\\nq.description = `\\n\\n你创建一個函數,透過使用Python計算數字的次方。\\n\\n你需要確保該函有注釋。\\n\\n你建以下程式碼、其中包含的行號只是做為參考。\\n\\n01 # calc_power 計算指數\\n02 # x 是底\\n03 # y 是次方\\n04 # 返回 x 的y次方的值\\n05 def calc_power(x, y):\\n06 comment = \\\"#返回值\\\"\\n07 return x ** y # x的y次方\\n\\n針對下列每個敘述,如果該敘述是正確的就選擇Yes.否則請選擇NO。\\n`\\nq.options = `\\n01到04行在語法檢查時將被忽略。\\n${OPTION_SPLITER}\\n02和03行中的井字符號(#)非必填。\\n${OPTION_SPLITER}\\n06行中的字串將被解釋為注釋。\\n`\\nq.content = ``\\nq.answer = { 0: 'yes', 1: 'no', 2: 'no' }\\nDATA.push(q)\\n\\n// 11\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\nWoodgrove Bank 正在將其過去的銀行交易程式碼轉移到 Python\\n\\n你已被雇用來紀錄轉移後的程式碼。\\n\\n哪些文件語法是正確的?\\n`\\nq.options = `\\n'回銀行帳戶的當前餘額\\ndef get balance():\\n return balance\\n${OPTION_SPLITER}\\n//返回銀行帳戶的當前餘額\\ndef get balance():\\n return balance\\n${OPTION_SPLITER}\\ndef get balance():\\n #回第行帳戶的能前除額\\n return balance\\n${OPTION_SPLITER}\\ndef get balance():\\n /*返回家行帳戶的當前餘額*/\\n return balance\\n`\\nq.content = ``\\nq.answer = [2]\\nDATA.push(q)\\n\\n// 12\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你為你的公司開發一個Python 應用程式。\\n你有以下的程式碼。其中包含的行號只是做為參考。\\n01 def test(a, b, c, d):\\n02 value = a + b *c -d\\n03 return value\\n根據程式碼片段中提供的資訊使用下拉式選單選擇每個問題的答案選項。\\n`\\nq.options = `\\na + b\\na * c\\nc - d\\n${OPTION_SPLITER}\\n加(+)\\n減(-)\\n${OPTION_SPLITER}\\n(a + b) * (c - d)\\n(a + (b * c)) - d\\na + ((b * c) - d)\\n`\\nq.content = `\\n運算式的哪個部份將第一個進行計算? ${CONTENT_SELECTER}\\n運算式的哪個部份將第二個進行計算? ${CONTENT_SELECTER}\\n哪個運算式等於題目函數中的運算式? ${CONTENT_SELECTER}\\n`\\nq.answer = {0: 1, 1: 0, 2: 1 }\\nDATA.push(q)\\n\\n// 13\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你為你的學校開了 Python應用程式。\\n\\n一個名為colors的串列包含 200種顏色。你需要分割這個串列,顯示由第二個顏色值開始到最後,間隔的顏色值。\\n\\n你應該使用哪個代碼?\\n`\\nq.options = `\\ncolors[::2]\\n${OPTION_SPLITER}\\ncolors[2:2]\\n${OPTION_SPLITER}\\ncolors[1:2]\\n${OPTION_SPLITER}\\ncolors[1::2]\\n`\\nq.content = ``\\nq.answer = [0]\\nDATA.push(q)\\n\\n// 14\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你正在編寫一個函數,它會返回傳入值的資料類型。你編寫了以下的程式碼。中包含的行號只是做為參考。\\n\\n01 def checkType (value):\\n02 dataType = type(value)\\n03 return dataType\\n04 print (checkType(True))\\n05 print (checkType(1.0))\\n06 print(checkType(1))\\n07 print (checkType (\\\"True\\\"))\\n\\n根據程式碼片段中提供的資訊,使用下拉式選單選擇擇每個問題的答案選項。\\n`\\nq.options = `\\n\u003cclass bool'\u003e\\n\u003cclass'float'\u003e\\n\u003cclass'int\u003e\\n\u003cclass'str'\u003e\\n${OPTION_SPLITER}\\n\u003cclass'bool'\u003e\\n\u003cclass'float'\u003e\\n\u003cclass'int'\u003e\\n\u003cclass'str'\u003e\\n${OPTION_SPLITER}\\n\u003cclass'bool'\u003e\\n\u003cclass'float'\u003e\\n\u003cclass'int'\u003e\\n\u003cclass'str'\u003e\\n${OPTION_SPLITER}\\n\u003cclass'bool'\u003e\\n\u003cclass'float'\u003e\\n\u003cclass'int'\u003e\\n\u003cclass'str'\u003e\\n`\\nq.content = `\\n在04行會印出什麼結果? ${CONTENT_SELECTER}\\n在05行會印出什麼結果? ${CONTENT_SELECTER}\\n在06行會印出什麼結果? ${CONTENT_SELECTER}\\n在07行會印出什麼結果? ${CONTENT_SELECTER}\\n`\\nq.answer = {0: 0, 1: 1, 2: 2, 3: 3}\\nDATA.push(q)\\n\\n// 15\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\nWoodgrove Bank 必須產生一份報表用來顯示所有客戶每天帳戶的平均餘額。報表必須去除餘額的小數部分。\\n您應該使用哪兩個程式碼片段?每個正確的答案都提供了一個完整的解決方案。請選擇兩個。\\n`\\nq.options = `\\naverage_balance = int(total_deposits / number_of_customers)\\n${OPTION_SPLITER}\\naverage_balance = total_deposits ** number_of_customers\\n${OPTION_SPLITER}\\naverage_balance = total_deposits // number_of_customers\\n${OPTION_SPLITER}\\naverage_balance = float(total_deposits // number_of_customers)\\n`\\nq.content = ``\\nq.answer = [0]\\nDATA.push(q)\\n\\n// 16\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你寫了以下的程式碼:\\n\\na = \\\"Testl\\nprint (a)\\nb = a\\na += 'Test2\\\"\\nprint (a)\\nprint (b)\\n\\n根據程式碼片段中提供的資訊,使用下拉式選單選擇每個問題的答案選項。\\n`\\nq.options = `\\nTest1\\nTest1Test2\\nTest2\\n${OPTION_SPLITER}\\nTest1\\nTest1Test2\\nTest2\\n${OPTION_SPLITER}\\nTest1\\nTest1Test2\\nTest2\\n`\\nq.content = `\\n在第一次print後會顯示什麼? ${CONTENT_SELECTER}\\n在第二次print 後會顯示什麼? ${CONTENT_SELECTER}\\n在第三次print 後會顯示什麼? ${CONTENT_SELECTER}\\n`\\nq.answer = {0: 0, 1: 1, 2: 0 }\\nDATA.push(q)\\n\\n\\n// 17\\nq = {}\\nq.type = DROG_AND_DROP\\nq.description = `\\n你正在開發一個比較數字的Python程式。\\n\\n你需要確保使用的是正確的比較運算子。\\n\\n計算每個運算式並指出正確的結果。回答時,將適當的結果從左側的列拖到右側的運算式中。每個結果可以使用一次,多次,或者不使用。\\n\\n注意:每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\nTrue\\n${OPTION_SPLITER}\\nFalse\\n${OPTION_SPLITER}\\n5\\n${OPTION_SPLITER}\\nNone\\n`\\nq.content = `\\nO or 5 ${CONTENT_SELECTER}\\nbool(0) ${CONTENT_SELECTER}\\nNone is None ${CONTENT_SELECTER}\\n-5 \u003c 0 \u003c 5 ${CONTENT_SELECTER}\\n`\\nq.answer = {0: 2, 1: 1, 2: 0, 3: 0}\\nDATA.push(q)\\n\\n// 18\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你編寫了以下的程式碼:\\n\\nlist_1 = [1, 2]\\nlist 2 = [3, 4]\\nlist_3 = list_1 + list_2\\nlist_4 = list_3 * 3\\nprint(list_4)\\n\\n你執行程式碼。\\n\\n什麼是輸出的值?\\n`\\nq.options = `\\n[[1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4]]\\n${OPTION_SPLITER}\\n[[1, 2, 3, 4], [1, 2, 3, 4], [1, 2, 3, 4]]\\n${OPTION_SPLITER}\\n[1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4]\\n${OPTION_SPLITER}\\n[3, 6, 9, 12]\\n`\\nq.content = ``\\nq.answer = [2]\\nDATA.push(q)\\n\\n// 19\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你執行以下的程式碼:\\n\\nnumList = [0, 1, 2, 3, 4]\\nprint (5 in numList)\\n\\n什麼是會輸出列印的内容?\\n`\\nq.options = `\\n4\\n${OPTION_SPLITER}\\n5\\n${OPTION_SPLITER}\\nFalse\\n${OPTION_SPLITER}\\nTrue\\n`\\nq.content = ``\\nq.answer = [2]\\nDATA.push(q)\\n\\n// 20\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你正在為一個舞蹈工作室編寫 Python應用程式。\\n\\n工作室希望鼓勵輕人和老年人報名。未成年人和老年人將會獲得10%的折扣。\\n\\n你編寫以下程式碼。其中包含的行號只是做為參考。\\n\\n01 def get_discount (minor, senior):\\n02 discount = 0.1\\n03\\n04 discount = 0\\n05 return discount\\n\\n你必須完程這個程式碼。\\n\\n在 03 行中你將加加入什麼程式碼?\\n`\\nq.options = `\\nif (not minor) or senior:\\n${OPTION_SPLITER}\\nif (not minor) and senior:\\n${OPTION_SPLITER}\\nif not (minor and senior):\\n${OPTION_SPLITER}\\nif not (minor or senior):\\n`\\nq.content = ``\\nq.answer = [0]\\nDATA.push(q)\\n\\n\\n// 21\\nq = {}\\nq.type = DROG_AND_DROP\\nq.description = `\\n乘你正在編寫一個Python 程式。該程式收集客戶資料並将其儲存在資料庫中。\\n\\n這個程式處理各式各樣的資料。\\n\\n你需要確保程式能夠正確地處理資料,以便能夠正確地儲存在資料庫中。\\n\\n將資料類型與程式碼片段對應。回答時,請將適當的資料類型從左側的列拖動到右側的程式碼片段。每種資料類型可以使用一次,多次,或者不使用。\\n`\\nq.options = `\\nbool\\n${OPTION_SPLITER}\\nfloat\\n${OPTION_SPLITER}\\nint\\n${OPTION_SPLITER}\\nstr\\n`\\nq.content = `\\n${CONTENT_SELECTER} age = 2\\n${CONTENT_SELECTER} minor = False\\n${CONTENT_SELECTER} name = \\\"Contoso\\\"\\n${CONTENT_SELECTER} weight = 123.5\\n${CONTENT_SELECTER} zip = \\\"81000\\\"\\n`\\nq.answer = {0: 2, 1: 0, 2: 3, 3: 1, 4: 3}\\nDATA.push(q)\\n\\n// 22\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你正在編寫一個計算使用者出生年份的程式。該程式會詢問使用者的年齡和當前年份,然後輸出使用者的出生年份。你編寫以下的程式碼,其中的行號只是做為參考。\\n\\n01 age = input(\\\"請輸入你的年龄:\\\")\\n02 year input(\\\"輸入四位数的年份:\\\")\\n03 born = eval(year) - eval(age)\\n04 message = \\\"你出生在” + str(born)\\n05 print(message)\\n\\n你需要確保程式使用適當的資料類型。\\n\\n哪些資料類型被使用了?根據程式碼片段中提供的資訊,使用下拉式選單選擇每個問題的答案選項。\\n\\n注意:每個正確的選擇都可獲得分。\\n`\\nq.options = `\\nint\\nstr\\nfloat\\nbool\\n${OPTION_SPLITER}\\nint\\nstr\\nfloat\\nbool\\n${OPTION_SPLITER}\\nint\\nstr\\nfloat\\nbool\\n`\\nq.content = `\\n在01行中age的資料類型是? ${CONTENT_SELECTER}\\n在03行中born的資料類型是? ${CONTENT_SELECTER}\\n在04行中message的資料類型是? ${CONTENT_SELECTER}\\n`\\nq.answer = {0: 1, 1: 0, 2: 1}\\nDATA.push(q)\\n\\n// 23\\nq = {}\\nq.type = TRUE_OR_FALSE\\nq.description = `\\n你正在創建一個Python程式來比較數字。\\n\\n你創建了以下的程式碼。其中包含的行號只是做為參考。\\n\\n01 num1 = eval(input(\\\"請輸入第一個數字:\\\"))\\n02 num2 = eval(input(\\\"請輸入第二個數字:\\\"))\\n03 if numl1 == num2:\\n04 print (\\\"這二個數字是相等的,\\\")\\n05 if num1 \u003c= num2:\\n06 print(\\\"數字1小於數字2.\\\")\\n07 if num1 \u003e num2:\\n08 print (\\\"數字1 大於 數字2.\\\")\\n09 if num2 = numl:\\n10 print (\\\"這二個數字是相同的,\\\")\\n\\n你需要確保比較的結果是準確的。\\n\\n針對下列每個敘述,如果正確的就選擇Yes,否則請選擇 No。\\n\\n注意:每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\n在04行的語法,只有二個數字的值是相等時才會列印出來。\\n${OPTION_SPLITER}\\n在06行的語法,只有 num1 小於num2時才會列印出來。\\n${OPTION_SPLITER}\\n在08行的語法,只有num1大於 num2時才會列印出來。\\n${OPTION_SPLITER}\\n09行的語法是不正確的比較。\\n`\\nq.content = ``\\nq.answer = {0: 'yes', 1: 'no', 2: 'yes', 3: 'yes'}\\nDATA.push(q)\\n\\n// 24\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n一個同學要求你對以下的程式碼除錯:\\n\\nx = 4\\nwhile x \u003e= 1:\\n if x % 4 == 0:\\n print (\\\"party\\\")\\n elif x - 2 \u003c 0:\\n print(\\\"cake\\\")\\n elif x / 3 == 0:\\n print (\\\"greeting\\\")\\n else:\\n print (\\\"birthday\\\")\\n x = x - 1\\n`\\nq.options = `\\nbirthday\\nparty\\ngreeting\\ncake\\n${OPTION_SPLITER}\\nparty\\ngreeting\\nbirthday\\ncake\\n${OPTION_SPLITER}\\nparty\\nbirthday\\nbirthday\\ncake\\n${OPTION_SPLITER}\\nbirthday\\ngreeting\\nparty\\ncake\\n`\\nq.content = ``\\nq.answer = [2]\\nDATA.push(q)\\n\\n// 25\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你正在編寫一個函數來執行安全的除法。\\n\\n你需要確保將分母和分子傳遞給函數,而且分母不是零。\\n\\n你要如何完成這段程式碼?回答時,在回答區選擇適當的程式碼片段。\\n`\\nq.options = `\\nif numerator is None or denominator is None:\\nif numerator is None and denominator is None:\\nif numerator = None or denominator = None:\\nif numerator = None and denominator = None:\\n${OPTION_SPLITER}\\nelif denoiinator == 0:\\nelif denominator = 0:\\nelif denominator != 0:\\nelif denominator in 0:\\n`\\nq.content = `\\ndef safe_divide (numerator, denominator):\\n ${CONTENT_SELECTER}\\n print(\\\"缺少所需的值.\\\")\\n ${CONTENT_SELECTER}\\n print(\\\"分母為0.\\\")\\n else:\\n return numerator / denominator\\n`\\nq.answer = {0: 0, 1: 0 }\\nDATA.push(q)\\n\\n// 26\\nq = {}\\nq.type = DROG_AND_DROP\\nq.description = `\\n你有以下串列結構\\nalph = \\\"abcdefghijklmnopqrstuvwxyz\\\"\\n\\n你需要評估執行各種分割操作的結果。\\n\\n將結果與分割操作進行對應。回答時,請將適當的結果從左側的列拖動到右側的分割操作。每個結果可以使用一次,多次,或者不使用。\\n`\\nq.options = `\\nzwtąnkheb\\n${OPTION_SPLITER}\\npmjg\\n${OPTION_SPLITER}\\ndefghijklmno\\n${OPTION_SPLITER}\\nponmlkjihgfe\\n${OPTION_SPLITER}\\ndefghijklmnop\\n${OPTION_SPLITER}\\ndgjm\\n${OPTION_SPLITER}\\nolif\\n${OPTION_SPLITER}\\n\\\"\\\"\\n`\\nq.content = `\\nalph[3:15] ${CONTENT_SELECTER}\\nalph[3:15:3] ${CONTENT_SELECTER}\\nalph[3:15:-3] ${CONTENT_SELECTER}\\nalph[15:3:-3] ${CONTENT_SELECTER}\\nalph[15:3] ${CONTENT_SELECTER}\\nalph[::-3] ${CONTENT_SELECTER}\\n`\\nq.answer = {0: 2, 1: 5, 2: 7, 3: 1, 4: 3, 5: 0}\\nDATA.push(q)\\n\\n\\n// 27\\nq = {}\\nq.type = SELECT\\nq.description = `\\n一個同事寫了一個將姓名輸入到資料庫中的程式。不幸的是,該程式顛倒了每個姓名中的字母。\\n\\n你需要編寫一個Python函數,以正確的順序輸出姓名中的字母。\\n\\n你應該如何完成程式碼?回答時,請在回答區中選擇適當的程式碼片段。\\n\\n注意:每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\nbackwards_name:\\nlen(backwards_name):\\nrange(0,len(backwards_name),-1):\\nrange(len(backwards_name)-1,-1,-1):\\n${OPTION_SPLITER}\\nbackwards_name[index-1]\\nbackwards_name[len(forward_name)-1]\\nbackwards_name[len(backward_name)-len(forward_name)]\\nbackwards_name[index]\\n`\\nq.content = `\\n# 函數會反轉字串中的字元.\\n# 以相反的順序返回新字串,\\ndef reverse_name(backwards_name):\\n forward_name = ''\\n for index in ${CONTENT_SELECTER}\\n forward_name += ${CONTENT_SELECTER}\\n return forward_name\\n\\nprint(reverse_name(\\\"leinad\\\")) # 測試範例\\n`\\nq.answer = {0: 1, 1: 1 }\\nDATA.push(q)\\n\\n// 28\\nq = {}\\nq.type = DROG_AND_DROP\\nq.description = `\\n如果在清單中找到該字串,則該函數必須須列印一則消息,指示已找到該字电,然後停止逐一查看清單。\\n* 該函數接受個清單和一個字串作為參數。\\n* 該函數必須在清單中搜索該字串。\\n* 如果在清單中找到該字串,則該函數必須列印一則消息,指示已找到該字串,然後停止逐一查看清單。\\n* 如果找不到該字串,則該函數必須列印一則消息,指示在清單中找不到該字串。\\n\\n如果找不到該字串,則該函數必須列印一則消息,指示在清單中找不到該字串。\\n`\\nq.options = `\\ndef search(items, term):\\n${OPTION_SPLITER}\\nfor i in range (len(items)):\\n${OPTION_SPLITER}\\n if items[i] == term:\\n print(\\\"{0} .\\\". format (term))\\n${OPTION_SPLITER}\\n else:\\n print (\\\"{0} E .\\\".format (term))\\n${OPTION_SPLITER}\\n break\\n`\\nq.content = `\\n${CONTENT_SELECTER}\\n${CONTENT_SELECTER}\\n${CONTENT_SELECTER}\\n${CONTENT_SELECTER}\\n${CONTENT_SELECTER}\\n`\\nq.answer = {0: 0, 1: 1, 2: 2, 3: 4, 4: 3}\\nDATA.push(q)\\n\\n// 29\\nq = {}\\nq.type = SELECT\\nq.description = `\\nWingtip Toys 公司正在為小學生創健一個互動式乘法表協助程式。\\n您需要完成一個函數計算並顯示從2到 12的所有乘法表組合。\\n你要如何完成這段程式碼?回答時,在回答區選擇適商當的程式碼片段。\\n`\\nq.options = `\\nfor col in range(1):\\nfor col in range(2,13):\\nfor col in range(2,12,1):\\nfor col in range(12):\\n${OPTION_SPLITER}\\nfor row in range(13):\\nfor row in range(2,12,1):\\nfor row in range(2,13):\\nfor row in range(12):\\n`\\nq.content = `\\n# 顯示 2 - 12 乘法表\\ndef times_tables():\\n ${CONTENT_SELECTER}\\n ${CONTENT_SELECTER}\\n end = \\\" \\\")\\n# main\\ntimes_tables()\\n`\\nq.answer = {0: 1, 1: 2}\\nDATA.push(q)\\n\\n//30\\nq = {}\\nq.type = SELECT\\nq.description = `\\nAdventure Works Cydles 銷售公司非常特殊,他們决定給所有不超過15萬美元的員工獎金。下面的公式適用於每個員工基於其基本工資和單位獎金:\\n\\n新工資= 目前工資x 103% + $500獎金\\n\\n您編寫程式碼將員工工資讀入名為salary_1ist 的數。\\n\\n您要如何完成適用於每個合格員工增加工資的程式碼。\\n你要如何完成這段程式碼?回答時,在回答區選擇適當得程式碼片段。\\n\\n注意:每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\nfor index in range(len(salary_list) + 1):\\nfor index in range(len(salary_list)-1):\\nfor index in range(len(salary_list)):\\nfor index in salary_list:\\n${OPTION_SPLITER}\\nexit()\\ncontinue\\nbreak\\nend\\n`\\nq.content = `\\n# 清單中的每個人的工資都根據增加而更新\\n15萬美元以上的員工將不會得到加薪.\\n# Salary list 是由員工資料庫中取得,程式碼不會顯示.\\n#\\n${CONTENT_SELECTER}\\n if salary_list[index] \u003e= 150000:\\n ${CONTENT_SELECTER}\\n salary_list[index] = (salary_list[index] * 1.03) + 500\\n`\\nq.answer = {0: 2, 1: 1}\\nDATA.push(q)\\n\\n\\n// 31\\nq = {}\\nq.type = SELECT\\nq.description = `\\n正在創建一個使用Python計算入場書的函數。入場費根據以下規則計算:\\n\\n* 任何5歳以下的人 = 免費入場\\n* 任何5歲或以上的在學學生= 10美元\\n* 任何5到17歲目沒有就學的人= 20美元\\n* 任何17歳以上目沒有就學的人=50美元\\n\\n你要如何完成這段程式碼?回答時,在回答區選擇適當的程式碼片段。\\n`\\nq.options = `\\nif age \u003e= 5 and school == True:\\nif age \u003e= 5 and age \u003c=17:\\nif age \u003e= 5 and school == False:\\n${OPTION_SPLITER}\\nelif age \u003e= 5 and school == False:\\nelse age \u003e= 5 and school == False:\\nelif age \u003e= 5 and school == True:\\n${OPTION_SPLITER}\\nif age \u003e= 5 and school == True:\\nif age \u003e= and school == False:\\nif age \u003c= 17:\\n`\\nq.content = `\\ndef admission_fee(age, school):\\n rate = 0\\n ${CONTENT_SELECTER}\\n rate = 10\\n ${CONTENT_SELECTER}\\n ${CONTENT_SELECTER}\\n rate = 20\\n else:\\n rate = 50\\n`\\nq.answer = {0: 0, 1: 0, 2: 2}\\nDATA.push(q)\\n\\n// 32\\nq = {}\\nq.type = SELECT\\nq.description = `\\n你為公司開發 Python 應用程式。\\n你要如何完成程式碼讓 print語法是正確的?回答時請在回答區中選擇適當的程式碼片段。\\n`\\nq.options = `\\nif numList == alphalist:\\nif numList == alphalist\\nelse:\\nelse\\n${OPTION_SPLITER}\\nif numList == alphalist:\\nif numList == alphalist\\nelse:\\nelse\\n`\\nq.content = `\\nnumList = [1, 2, 3, 4, 5]\\nalphalist = [\\\"a\\\", \\\"b\\\", \\\"c\\\", \\\"d\\\", \\\"e\\\"]\\n${CONTENT_SELECTER}\\n print(\\\"numList 中的值等於 alphalist\\\")\\n${CONTENT_SELECTER}\\n print(\\\"numList 中的值不等於 alphalist\\\")\\n`\\nq.answer = {0: 0, 1: 2}\\nDATA.push(q)\\n\\n// 33\\nq = {}\\nq.type = SELECT\\nq.description = `\\n正在一個Python 程式,要求使用者輸入一個數字並確定該數字是1位數,2位數還是2位數以上。\\n\\n去寫這個程式。\\n\\n分要如何完成這段程式碼?回答時,在回答區選擇適當的程式碼片段。\\n`\\nq.options = `\\nif num \u003e -10 and num \u003c10:\\nif num \u003e -100 and num \u003c 100:\\n${OPTION_SPLITER}\\nif num \u003e -100 and num \u003c 100:\\nelif num \u003e -100 and num \u003c 100:\\nif num \u003e -10 and num \u003c 10:\\nelif num \u003e -10 and num \u003c10:\\n${OPTION_SPLITER}\\nelse:\\nelif:\\n`\\nq.content = `\\nnum = int(input (\\\"翰入一個1位或2位的數字:\\\"))\\ndigits = \\\"0\\\"\\n\\n${CONTENT_SELECTER}\\n digits = \\\"1\\\"\\n${CONTENT_SELECTER}\\n digits = \\\"2\\\"\\n${CONTENT_SELECTER}\\n digits = \\\"\u003e2\\\"\\n${CONTENT_SELECTER}\\nprint (digits + \\\"位數。\\\")\\n`\\nq.answer = {0: 0, 1: 1, 2: 0}\\nDATA.push(q)\\n\\n// 34\\nq = {}\\nq.type = DROG_AND_DROP\\nq.description = `\\n\\n01 from random import randint\\n02 target = randint (1, 10)\\n03 chance = 1\\n04 print (\\\"猜一個從1到10的整數,你將有3機會,\\\")\\n05 \\n06 guess = int(input(\\\"猜一個整數:\\\"))\\n07 if guess \u003e target:\\n08 print (\\\"猜的數字太高了\\\")\\n09 elif guess \u003c target:\\n10 print (\\\"猜的數字太低了\\\")\\n11 else:\\n12 print(\\\"猜對了!\\\")\\n13\\n14\\n`\\nq.options = `\\nwhile chance \u003c= 3:\\n${OPTION_SPLITER}\\nwhile chance \u003c 3:\\n${OPTION_SPLITER}\\nbreak\\n${OPTION_SPLITER}\\npass\\n${OPTION_SPLITER}\\nchance += 1\\n${OPTION_SPLITER}\\nwhile chance \u003c 3\\n${OPTION_SPLITER}\\nchance = 2\\n`\\nq.content = `\\n在05行你要使用哪個程式碼片段? ${CONTENT_SELECTER}\\n在13行你要使用哪個程式碼片段? ${CONTENT_SELECTER}\\n在14行你要使用哪個程式碼片段? ${CONTENT_SELECTER}\\n`\\nq.answer = {0: 1, 1: 2, 2: 4}\\nDATA.push(q)\\n\\n// 35\\nq = {}\\nq.type = DROG_AND_DROP\\nq.description = `\\n你正在編寫一個函數以讀取資料檔案並將結果列印為格式化表格。\\n\\n資料檔案中包含有關水果的資訊。每個記錄都包含水果的名稱、重呈和價格。\\n\\n你需要列印資料,其看起來像下面的範例:\\n\\nOranges 5.6 1.33\\nApples 2.0 0.54\\nGrapes 10.2 10.96\\n\\n具體地說,列印輸出必須符合以下要求:\\n* 水果名稱必須印在10個空格範圍内立並靠左對齊。\\n* 重量必須印在5個腔格範圍内並靠右對齊,小數點後最多一個數位。\\n* 價格必須印在7個空格範圍内並右對濟, 小數點後最多兩位數。\\n\\n你創建了以下的程式碼。其中包含的行號只是做為參考。\\n\\n01 def print_table (file):\\n02 data = open (file, 'r')\\n03 for record in data:\\n04 fields = record.split(\\\",\\\")\\n05\\n\\n你應該如何完成05行的程式碼?回答時,請將適合的程式碼片段拖動到正確的位置。每個程式碼片段都可以使用一次,多次,或者不使用。你可能需要在窗格之間拖動分欄的寬度或捲動位置\\n來查看内容。\\n`\\nq.options = `\\nprint (\\\"\\n${OPTION_SPLITER}\\n{10:0}\\n${OPTION_SPLITER}\\n{5:1f}\\n${OPTION_SPLITER}\\n{7:2f}\\n${OPTION_SPLITER}\\n{2:7.2f}\\n${OPTION_SPLITER}\\n{1:5.1f}\\n${OPTION_SPLITER}\\n{0:10}\\n`\\nq.content = `\\n${CONTENT_SELECTER}${CONTENT_SELECTER}${CONTENT_SELECTER}${CONTENT_SELECTER}\\\". format(fields [0], eval (fields[1]), eval(fields[2])))\\n`\\nq.answer = {0: 0, 1: 6, 2: 5, 3: 4}\\nDATA.push(q)\\n\\n// 36\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你編寫了以下的程式碼:\\nimport datetime\\n\\nd = datetime.datetime(2017, 4, 7)\\nprint('{:%B-%d-%y}').format(d))\\nnum = 1234567.890\\nprint('{:,.4f}'.format(num))\\n`\\nq.options = `\\nApril-07-17\\n1,234,567.8900\\n${OPTION_SPLITER}\\n04-07-2017\\n1,234,567.8900\\n${OPTION_SPLITER}\\n04-07-17\\n1234567.89\\n${OPTION_SPLITER}\\n2017-April-17\\n1,234,567.890\\n`\\nq.content = ``\\nq.answer = [1]\\nDATA.push(q)\\n\\n\\n// 37\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你正在編寫一個Python 程式來自動化庫存。你的第一個任務是讀取庫存交易記錄的檔案。該檔案包含前一天的銷售額,包括物料編號、價格和數量。\\n下面顯示的是檔案中的資料範例:\\n\\n10, 200, 5\\n20, 100, 1\\n\\n程式碼必須符合以下的需求:\\n* 檔案的每行都必須讀取和列印。\\n* 如果遇到空行,則必須忽略。\\n* 在完成所有行的讀取後,必須關閉檔案。\\n\\n你創建了以下的程式碼。其中包含的行號只是做為參考。\\n\\n01 inventory = open(\\\"inventory.txt\\\", 'r')\\n02 eof = False\\n03 while eof == False:\\n04 line = inventory.readline ()\\n05\\n06\\n07 print(line.strip())\\n08 else:\\n09 print(\\\"檔案結束\\\")\\n10 eof = True\\n11 inventory.close()\\n在05 及06行你應該編寫哪些程式碼?\\n`\\nq.options = ` \\n05 if line != '\\\\\\\\n':\\n06 if line != \\\"\\\":\\n${OPTION_SPLITER}\\n05 if line != '':\\n06 if line != \\\"\\\":\\n${OPTION_SPLITER}\\n05 if line != '':\\n06 if line != \\\"\\\\\\\\n\\\":\\n${OPTION_SPLITER}\\n05 if line != '\\\\\\\\n':\\n06 if line != None:\\n`\\nq.content = ``\\nq.answer = [2]\\nDATA.push(q)\\n\\n// 38\\nq = {}\\nq.type = OPTIONS\\nq.description = `\\n你正在創建一個電子商務腳本,它接受來自使用者的輸入,並以逗號分隔的格式輸出資料。\\n\\n你可以編寫以下程式碼來接受輸入:\\n\\nitem = input (\\\"輸入項目名稱:\\\")\\nsales = input(\\\"翰入數量:\\\")\\n\\n輸出必須符合以下要求\\n* 字串必須括在雙號内。\\n* 數字不得用引號或其他字元括起來。\\n* 每個項目必須用逗號隔開。\\n\\n你需要完成程式碼以符合要求。\\n\\n你應該使用哪三個程式碼片段?每個正確的答案都提供了一個完整的解決方案。請選擇三個。\\n`\\nq.options = `\\nprint(item + ',' + sales)\\n${OPTION_SPLITER}\\nprint('\\\"' + item + '\\\",' + sales)\\n${OPTION_SPLITER}\\nprint(\\\"%s\\\",%s' % (item, sales))\\n${OPTION_SPLITER}\\nprint (\\\"{0},{1}\\\".format(item, sales))\\n${OPTION_SPLITER}\\nprint (\\\"{0}\\\",{1}'.format(item, sales))\\n`\\nq.content = ``\\nq.answer = [1, 2, 4]\\nDATA.push(q)\\n\\n// 39\\nq = {}\\nq.type = SELECT\\nq.description = `\\nTailspin Toys 公司正在為員工建立一個籃球場,以提高公司士氣。\\n\\n你正在創建一個Python 程式,員工可以使用它來記錄他們的平均得分。\\n\\n該程式必須允許使用者輸入他們的名字和當前分數。該程式將輸出使用者名和使用者的平均分數。輸出必須符合以下要求\\n* 使用者姓名必須提靠左對齊的。\\n* 如果使用者姓名少於20個字元,則必須在右側添加額外的空間。\\n* 平均分數必須有三個位置在小數點的左邊和一個位置在小數點右邊XXX.X)。\\n\\n你要如何完成程式碼?回答時,請在回答區中選擇適當的程式碼片段。\\n\\n注意每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\n%-20i\\n%-20d\\n%-20f\\n%-20s\\n${OPTION_SPLITER}\\n%1.5s\\n%5.1f\\n%5.1s\\n%1.5f\\n`\\nq.content = `\\nname = input (\\\"你的名字是什麼?\\\")\\nScore = 0\\ncount = 0\\nsum = 6\\nwhile (score != -1):\\n score = int(input (\\\"輸入你的分数:(輸入-1結束程式)\\\"))\\n if score == -1:\\n break\\n sum += core\\n count += 1\\naverage = sum / count\\nprint(\\\"${CONTENT_SELECTER}, 你的平均分数是: ${CONTENT_SELECTER}\\\"%(name, average))\\n`\\nq.answer = { 0: 3, 1: 1 }\\nDATA.push(q)\\n\\n\\n// 40\\nq = {}\\nq.type = SELECT\\nq.description = `\\nNorthwind Electric Cars公司需要使用 Python 程式碼來幫忙更新他們的檔案系統。你必須創建個簡單的檔案操作程式來執行以下操作的\\n* 檢查檔案是否存在。\\n* 如果該檔案存在,則顯示其内容。\\n* 如果該檔案不存在,請使用指定的名稱創建新檔。\\n* 將“清單末尾”一詞追加到檔案最後。\\n\\n您需要完成代碼以滿足要求。\\n\\n你要如何完成這段程式碼?回答時,在回答區選擇適當的程式碼片段。\\n\\n注意:每個正確的選擇都可獲得一分。\\n`\\nq.options = `\\nisfile('myFile.txt'):\\nos.exist('myFile.txt'):\\nos.find('myFile.txt'):\\nos.path.isfile('myFile.txt'):\\n${OPTION_SPLITER}\\noutput('myFile.txt')\\nprint(file.get('myFile.txt'))\\nprint(file.read())\\nprint('myFile.txt')\\n${OPTION_SPLITER}\\nopen('myFile.txt', 'a')\\nopen('myFile.txt\\\", ')\\nopen('myFile.txt', 'w')\\n${OPTION_SPLITER}\\nappend\\nfile.add\\nfile.write\\nwrite\\n`\\nq.content = `\\nimport os\\nif ${CONTENT_SELECTER}\\n file = open (\\\"my File.txt')\\n ${CONTENT_SELECTER}\\n file.close()\\nfile = ${CONTENT_SELECTER}\\n${CONTENT_SELECTER} ('清單末尾')\\nfile.close()\\n`\\nq.answer = {0: 3, 1: 2, 2: 0, 3: 2}\\nDATA.push(q)\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nfunction isNotEmptyString (str) {\\n return str != '';\\n}\\nDATA.forEach((exam, idx) =\u003e {\\n\\n try{\\n\\n if (exam.type === OPTIONS) {\\n exam.options = exam.options.split(OPTION_SPLITER).filter(isNotEmptyString).map(s=\u003es.trim())\\n }\\n\\n if (exam.type === TRUE_OR_FALSE) {\\n exam.options = exam.options.split(OPTION_SPLITER).filter(isNotEmptyString).map(s=\u003es.trim())\\n }\\n\\n if (exam.type === SELECT) {\\n\\n const options = exam.options.split(OPTION_SPLITER).map((options, index) =\u003e {\\n const arr = options.split('\\\\n').filter(isNotEmptyString).map(s=\u003es.trim())\\n arr.answer = exam.answer[index]\\n return arr\\n })\\n\\n const lines = exam.content.split(CONTENT_SELECTER)\\n const mergeLines = []\\n for (let i = 0; i \u003c lines.length; i++) {\\n mergeLines.push(lines[i])\\n if (options[i]) {\\n options[i].idx = i\\n mergeLines.push(options[i])\\n }\\n }\\n\\n exam.content = mergeLines\\n }\\n\\n if (exam.type === DROG_AND_DROP) {\\n exam.options = exam.options.split(OPTION_SPLITER).filter(a =\u003e a != '')\\n\\n const lines = exam.content.split(CONTENT_SELECTER)\\n const mergeLines = []\\n for (let i = 0; i \u003c lines.length; i++) {\\n mergeLines.push(lines[i])\\n \\n if (i \u003c lines.length - 1) {\\n let options = JSON.parse(JSON.stringify(exam.options))\\n options.idx = i;\\n mergeLines.push(options)\\n }\\n }\\n\\n exam.content = mergeLines\\n\\n }\\n\\n exam.description = exam.description.trim()\\n\\n }\\n\\n catch(err) {\\n console.log(err, idx, exam)\\n }\\n});\\n\\nnew Vue({\\n el: '#app',\\n data: {\\n ...TYPES,\\n AZ: A_TO_Z,\\n exam: DATA,\\n index: 0,\\n userAnswer: [],\\n },\\n\\n mounted() {\\n let hash = location.hash || '#1'\\n this.index = Number(hash.slice(1)) - 1\\n location.hash = hash\\n\\n this.exam.forEach((exam) =\u003e {\\n this.userAnswer.push(exam.answer || {})\\n })\\n },\\n\\n updated() {\\n location.hash = '#' + (this.index + 1)\\n },\\n\\n methods: {\\n toggleFullscreen() {\\n if ((window.fullScreen) || (window.innerWidth == screen.width \u0026\u0026 window.innerHeight == screen.height)) {\\n if (document.exitFullscreen) {\\n document.exitFullscreen();\\n } else if (document.mozCancelFullScreen) { /* Firefox */\\n document.mozCancelFullScreen();\\n } else if (document.webkitExitFullscreen) { /* Chrome, Safari and Opera */\\n document.webkitExitFullscreen();\\n } else if (document.msExitFullscreen) { /* IE/Edge */\\n document.msExitFullscreen();\\n }\\n \\n } else {\\n let el = document.getElementById(\\\"app\\\")\\n if (el.requestFullscreen) {\\n el.requestFullscreen();\\n } else if (el.mozRequestFullScreen) {\\n el.mozRequestFullScreen();\\n } else if (el.webkitRequestFullscreen) {\\n el.webkitRequestFullscreen();\\n } else if (el.msRequestFullscreen) {\\n el.msRequestFullscreen();\\n }\\n }\\n\\n },\\n prev() {\\n if (this.index \u003e 0) this.index--\\n },\\n next() {\\n if (this.index \u003c this.exam.length - 1) this.index++\\n },\\n },\\n\\n computed: {\\n current() {\\n return this.exam[this.index] || {}\\n },\\n currentAnswer() {\\n return this.userAnswer[this.index] || []\\n },\\n isFirst() {\\n return this.index === 0\\n },\\n isLast() {\\n return this.index === this.exam.length - 1\\n }\\n }\\n})\\n\"}","created_at":"2020-08-27T19:32:56.652+08:00","updated_at":"2020-08-28T17:28:04.803+08:00","name":"MTA python 考前猜題 (第二份)","language":"web","screenshot":{"url":"/uploads/project/screenshot/185940/80a7e6fe568764edbb82a0c6da5e1204.jpg"},"parent_id":185740,"plugin":"","description":null,"note":null,"status":"public","like_student_ids":[],"is_featured":false,"views":388,"hashid":"6rpsm9je","is_content_changed":false,"review_status":"unsubmitted","submitted_at":null,"reviewed_at":null,"advise":null,"is_deleted":false}
[{"id":3156812,"file_name":"koding.png","project_id":185940,"asset_id":182920,"created_at":"2020-08-27T19:32:56.663+08:00","updated_at":"2020-08-27T19:32:56.663+08:00"}]
Orange Apple Learning Platform
My Projects
View Project Page
Export
Remix
Import
Delete
Download Android APP (APK)
Screenshot
Open Web Site
繁中
简中
English
日本語
1:1:1
1:1
Full Width
Scan the QRCode below with your phone to install
Or you can
download APK
to this computer
Scan the QRCode below with your phone to install
Or you can
download APK
to this computer