Skip to main content

Posts

Showing posts from May, 2018

Maze - Blockly Games

Blockly Games : Maze 1 Question 問題: Solution 解答: moveForward(); moveForward(); Blockly Games : Maze 2 Question 問題: Solution 解答: moveForward(); turnLeft(); moveForward(); turnRight(); moveForward(); Blockly Games : Maze 3 Question 問題: Solution 解答: while (notDone()) {   moveForward(); } Blockly Games : Maze 4 Question 問題: Solution 解答: while (notDone()) {   moveForward();   turnLeft();   moveForward();   turnRight(); } Blockly Games : Maze 5 Question 問題: Solution 解答: moveForward(); moveForward(); turnLeft(); while (notDone()) {   moveForward(); } Blockly Games : Maze 6 Question 問題: Solution 解答: while (notDone()) {   moveForward();   if (isPathLeft()) {     turnLeft();   } } Blockly Games : Maze 7 Question 問題: Solution 解答: while (notDone()) {   moveForward();   if (is

Open The Lock - Grasshopper

Open The Lock - Grasshopper Question 問題: YOUR CODE var pinNumber = 10; var foundKey = pickRandom([‘yes’,’no’]); print(‘pinNumber is ‘ + pinNumber); print(‘foundKey is ‘ + foundKey); if (foundKey === ‘yes’ && pinNumber=== 10) {     print(‘You opened the lock!‘); } if (foundKey === ‘yes’ && pinNumber=== 10) {     print(‘The pin number is right, but you are missing the key.‘); } Sample code solution 解答: YOUR CODE var pinNumber = 10; var foundKey = pickRandom([‘yes’,’no’]); print(‘pinNumber is ‘ + pinNumber); print(‘foundKey is ‘ + foundKey); if (foundKey === ‘yes’ && pinNumber=== 10) {     print(‘You opened the lock!‘); } if (foundKey === ‘no’ && pinNumber=== 10) {     print(‘The pin number is right, but you are missing the key.‘); } Details 說明: 只要把 foundKey === ‘yes’ 改成 no 就可以 主程式沒把宣告放上去,是為了凸顯主題,不過有可能會造成誤解。 程式前面缺少的宣告變數部分 // 宣告變數

Image Decoder - Grasshopper

  Image Decoder Details 詳細解說: // 宣告變數 img, 型態自動依初始值設為字串 // 設定初始值為存放影像編碼 var img = "ewvveewvvw wiiwiiw webbwbbew weeggweggw ewyyewyyew woowoowe wrreewrrw"; 程式一開始宣告變數 img 存放影像編碼,影像編碼內穿插了 ‘e’ 這個字元符號,這個多餘的字元符號可以是任何沒有使用到的字元都可以替代,例如使用 ‘x’,或是使用兩種以上都可以,不過程式解碼時要記得都要濾掉。 這些多餘的字元符號把原來的圖案弄亂,所以可以讓不知道解碼的人看不出來是什麼圖案。如果我們收到知道如何解碼,可以把 'e' 字元符號去掉(Filter out 'e’),就可以看到原來的圖案了 IMAGE DATA // 原來要顯示的圖樣 空白字元表示換行 var img =      "wvvwvvw wiiwiiw wbbwbbw wggwggw wyywyyw woowoow wrrwrrw" IMAGE DATA ENCODE // 影像編碼內穿插了 ‘e’ 這個字元符號,把原來的圖案弄亂 var img = "ewvveewvvw wiiwiiw webbwbbew weeggweggw ewyyewyyew woowoowe wrreewrrw" // 解碼部分,依序判斷陣列中的字元不為’e’ 則畫出編碼內容方塊 for (var letter of img) {   if (letter !== ‘e’) {     drawBoxes(letter);   } } // 將變數 img 印出,  print(img); 因為我們並沒有改變 img 內容,所以 img 內容仍是含有 ’e’ 字元未解碼的狀態  YOUR CODE // 宣告變數 img, 型態自動依初始值設為字串 // 設定初始值為存放影像編碼 var img = "ewvveewvvw wiiwiiw webbwbbew weeggweggw ewyyewyyew woowo