> 這是提供給程式創世神的同學所有題目的解答
> \<port\>的部分請根據上課老師提供的port帶入,如果是在minecraft.codingbar.ai伺服器,就不須帶入
> 這是提供給5天班的版本,十天班的只需將一天的課程分為兩天看即可
[toc]
# Python 程式創世神
# 第一天
## Q5
```python=
from CBMC import *
mc = CBMC("<自己的遊戲ID>", "minecraft.codingbar.ai", <port>)
mc.setSpawnPoint()
```
## Q10
```python=
from CBMC import *
mc = CBMC("<自己的遊戲ID>", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
mc.say(x, y, z)
```
## Q11
```python=
from CBMC import *
mc = CBMC("<自己的遊戲ID>", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
print(x, y, z)
```
# 第二天
## Q2
```python=
from CBMC import *
mc = CBMC("<自己的遊戲ID>", "minecraft.codingbar.ai", <port>)
mc.setPos(1758 ,209 ,-172)
```
## Q3
```python=
from CBMC import *
mc = CBMC("<自己的遊戲ID>", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
print(x, y, z)
```
## Q4
```python=
from CBMC import *
mc = CBMC("<自己的遊戲ID>", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
ids = mc.getBlock(x, y - 1, z) # 取得腳下那一格的方塊ID
print(ids)
```
## Q5
```python=
from CBMC import *
mc = CBMC("<自己的遊戲ID>", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
ids = mc.getBlock(x, y - 1, z) # 取得腳下那一格的方塊ID
print(ids)
```
## Q6
```python=
name = input()
print("今天是", name, ",祝你生日快樂!")
```
## Q8
```python=
天氣狀況 = input()
if 天氣狀況 == "雨天":
print("記得要帶傘")
```
## Q9
```python=
redstone = input()
if redstone == "on":
print("紅石機關啟動了")
if redstone == "off":
print("紅石機關沒反應")
```
## Q10
```python=
block = input()
if block == "on":
print("紅石火把暗")
if block == "off":
print("紅石火把亮")
else:
print()
```
## Q11
```python=
n = input()
if n == "64":
print("剛好一組")
else:
print("沒有剛好一組")
```
## Q12
```python=
gamemode = int(input())
if gamemode == 0:
print("生存模式")
elif gamemode == 1:
print("創造模式")
elif gamemode == 2:
print("冒險模式")
elif gamemode == 3:
print("旁觀者模式")
else:
print("沒有這個模式")
```
# 第三天
## Q1
### 第一種寫法
```python=
n = int(input())
if 0 <= n < 6000:
print("上午")
elif 22200 <= n < 24000:
print("黎明")
elif 6000 <= n < 13800:
print("下午")
elif 13800 <= n < 22200:
print("夜晚")
```
### 第二種寫法
```python=
n = int(input())
if n < 6000:
print("上午")
elif n < 13800:
print("下午")
elif n < 22200:
print("夜晚")
elif n < 24000:
print("黎明")
```
## Q2
```python=
x = int(input())
木棒 = x ** 8
梯子 = (木棒 // 7) * 3
剩餘木棒 = (木棒 % 7)
print(梯子, 剩餘木棒)
```
## Q3
```python=
connect = input()
length = int(input())
if connect == "yes" and length <= 15:
print("紅石燈點亮了")
elif connect == "yes" or length <= 15:
print("有點問題,請檢查")
else:
print("完全不對啊")
```
## Q4
### 第一種寫法
```python=
n = input()
if n == "out":
print("你已經死了!")
else:
print("你還活著喔!")
```
### 第二種寫法
```python=
n = input()
if not n == "out":
print("你還活著喔!")
else:
print("你已經死了!")
```
## Q6
```python=
fire = input()
coal1 = input()
coal2 = input()
powder = input()
if fire == "yes" and (coal1 == "yes" or coal2 == "yes") and powder == "yes":
print("得到火焰彈了")
else:
print("材料不夠")
```
## Q7
```python=
w1 = int(input("黑橡木材"))
w2 = int(input("相思木材"))
w3 = int(input("叢林木材"))
w4 = int(input("樺木材"))
w5 = int(input("杉木材"))
w6 = int(input("橡木材"))
b = int(input("木棒"))
if b >= 2:
if (w1 + w2 + w3 + w4 + w5 + w6) >= 1:
print("得到木鏟了")
else:
print("材料不夠")
else:
print("材料不夠")
```
# 第四天
## SetBlock 練習
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
mc.setBlock(x, y, z, 1)
```
## Q1
```python=
n = int(input())
for i in range(n + 1):
print(i)
```
## Q2
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(10):
mc.setBlock(x + i, y, z ,1)
```
## Q3
### 第一種寫法
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(100):
mc.setBlock(x + i, y, z + i // 2, 2)
```
### 第二種寫法
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(0,100,2):
mc.setBlock(x + i, y, z + i // 2, 2)
mc.setBlock(x + i + 1, y, z + i // 2, 2)
```
## Q4
### 第一種寫法
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(576):
mc.setBlock(x + i % 19, y + i // 13, z, 1)
```
### 第二種寫法
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
n = 13
for i in range(n * n):
mc.setBlock(x + i % n, y + i // n, z, 1)
```
## Q5
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(50):
mc.setBlock(x, y, z + i, 1)
mc.setBlock(x, y + 1, z + i, 1)
mc.setBlock(x, y + 2, z + i, 1)
mc.setBlock(x, y + 3, z + i, 1)
mc.setBlock(x, y + 4, z + i, 1)
if i % 3 == 0:
mc.setBlock(x, y + 5, z + i, 1)
```
## Q7
```python=
for i in range(12,1001,13):
print(i)
```
## Q8
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(5):
mc.setBlock(x + i, y + i, z, 1)
mc.setBlock(x + i, y + i, z + 1, 1)
for i in range(0, 50, 4):
mc.setBlock(x + i + 5, y + 5, z, 1)
mc.setBlock(x + i + 5, y + 5, z + 1, 1)
```
## Q9
### 第一種寫法
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(0, 49, 2):
mc.setBlock(x + i % 7, y + i // 7, z, 35, i % 8)
```
### 第二種寫法
```python=
from CBMC import *
mc = CBMC("CodingBarOP4", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
n = 7
for i in range(n):
for j in range(n):
if (i + j) % 2 == 0:
mc.setBlock(x + i, y + j, z, 35, 6 - (i + j) % 8)
```
## Q10
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(0, 28, 2):
mc.setBlock(x + i % 7, y + i // 7, z, 35, i % 8)
mc.setBlock(x, y + 4, z, 35, 6)
for i in range(30, 48, 2):
mc.setBlock(x + i % 7, y + i // 7, z, 35, i % 6)
mc.setBlock(x + 6, y + 6, z, 35, 6)
```
## Q11
```python=
start = int(input())
end = int(input())
repeat = int(input())
for i in range(repeat):
for j in range(start, end + 1):
print(j)
```
## Q12
```python=
for i in range(1, 99):
for j in range(3):
print(i + j)
```
## Q13
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
width = int(input())
hight = int(input())
for i in range(width):
for j in range(hight):
mc.setBlock(x + j, y + i, z, 1)
```
## Q14
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
n = 10
for i in range(n): #for迴圈
for j in range(n): #for迴圈
if i >= j:
mc.setBlock(x + i, y + j, z, 35, i)
for i in range(n): #for迴圈
for j in range(n): #for迴圈
if i + j < n:
mc.setBlock(x + i, y + j, z + 1, 35,j)
```
# 第五天
## Q2
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x0, y0, z0 = mc.getPos()
a = int(input())
b = int(input())
c = int(input())
for x in range(a):
for y in range(c):
for z in range(b):
mc.setBlock(x0 + x, y0 + y, z0 + z, 1)
```
## Q3
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x0, y0, z0 = mc.getPos()
a = int(input())
b = int(input())
c = int(input())
for x in range(a):
for y in range(c):
for z in range(b):
if x == a - 1 or y == c - 1 or z == b - 1:
mc.setBlock(x0 + x, y0 + y, z0 + z, 20)
elif x == 0 or y == 0 or z == 0:
mc.setBlock(x0 + x, y0 + y, z0 + z, 1)
```
## Q4
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x0, y0, z0 = mc.getPos()
for y in range(3):
for z in range(7):
for x in range(z, 7):
mc.setBlock(x0 + x, y0 + y, z0 + z, 35, y)
x0 = x0 + 10
for y in range(3):
for z in range(7):
for x in range(z, 7 - z):
mc.setBlock(x0 + x, y0 + y, z0 + z, 35, y)
x0 = x0 + 10
for y in range(3):
for z in range(7):
for x in range(z, 7 - z):
mc.setBlock(x0 + x, y0 + y, z0 + 2 * z, 35, y)
mc.setBlock(x0 + x, y0 + y, z0 + 2 * z + 1, 35, y)
```
## Q5
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x0, y0, z0 = mc.getPos()
height = int(input())
width = 2 * height - 1
for y in range(height):
for x in range(y , width - y):
for z in range(y, width - y):
mc.setBlock(x0 + x, y0 + y, z0 + z, 57)
mc.setBlock(x0 + height - 1, y0 + height - 1, z0 + height - 1, 138)
x0 = x0 + 30
for y in range(height):
mc.setBlocks(x0 + y, y0 + y, z0 + y, x0 + width - y - 1, y0 + y, z0 + width - y - 1, 57)
mc.setBlock(x0 + height - 1, y0 + height - 1, z0 + height - 1, 138)
```
## Q6
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x0, y0, z0 = mc.getPos()
#如果是直徑10的球,要堆疊4,6,8,10,10,10,10,8,6,4的圓
for i in range(-3, 4): #因為球是對稱的,可以範圍從負到正,讓0代表直徑10的圓
if i > 0:
mc.buildCircle(x0, y0, z0, 10 - 2 * i) #建立圓
y0 = y0 + 1 #上移一層
elif i < 0:
mc.buildCircle(x0, y0, z0, 10 + 2 * i) #建立圓
y0 = y0 + 1 #上移一層
elif i == 0:
for j in range(4): #有幾層直徑10的圓
mc.buildCircle(x0, y0, z0, 10) #建立圓
y0 = y0 + 1 #上移一層
```
## Q8
### 第一種寫法
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x, y, z = mc.getPos()
x1, z1 = x, z
maze = ["XXXXXXXXXXXX"] * 16
#X是牆壁
#_是通道
maze[0] = "X_XXXXXXXXXX"
maze[1] = "X_X________X"
maze[2] = "X_X_XXXXXX_X"
maze[3] = "X_X_XX___X_X"
maze[4] = "X_X_XX_X_X_X"
maze[5] = "X_X_XX_X_X_X"
maze[6] = "X______X_X_X"
maze[7] = "X_XXXXXXXX_X"
maze[8] = "X_X______X_X"
maze[9] = "X_X_XXXXXX_X"
maze[10]= "X_X________X"
maze[11]= "X_XXXXX_XXXX"
maze[12]= "X_XXXXX_XXXX"
maze[13]= "X_____X____X"
maze[14]= "XXXXXXXXXX_X"
maze[15]= "XXXXXXXXXX_X"
xMove = 0
for i in maze:#讀取每一行的迷宮
x = x1
x = x + xMove
zMove = 0
for j in i:#讀取每一行中每一格的迷宮
z = z1
z = z + zMove
if j == "X":#當遇到X的時候
mc.setBlocks(x,y,z,x,y+10,z,155)#蓋牆壁
elif j =="_":#當遇到_的時候
mc.setBlocks(x,y,z,x,y+10,z,0)#蓋空氣
#這邊使用elif如果還想蓋其他種方塊再增加一個條件即可
zMove = zMove + 1
xMove = xMove + 1
```
### 第二種寫法
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x, y, z = mc.getPos()
x1, z1 = x, z
maze = ["XXXXXXXXXXXX"] * 18
#X是牆壁
#_是通道
maze[0] = "X_XXXXXXXXXX"
maze[1] = "X_X________X"
maze[2] = "X_X_XXXXXX_X"
maze[3] = "X_X_XX___X_X"
maze[4] = "X_X_XX_X_X_X"
maze[5] = "X_X_XX_X_X_X"
maze[6] = "X______X_X_X"
maze[7] = "X_XXXXXXXX_X"
maze[8] = "X_X______X_X"
maze[9] = "X_X_XXXXXX_X"
maze[10]= "X_X________X"
maze[11]= "X_XXXXX_XXXX"
maze[12]= "X_XXXXX_XXXX"
maze[13]= "X_____X____X"
maze[14]= "XXXXXXXXXX_X"
maze[15]= "X_XXX_XXXX_X"
maze[16]= "X__________X"
maze[17]= "XXXXXXXXXX_X"
for i in range(len(maze)):
for j in range(len(maze[i])):
if maze[i][j] == "X":
mc.setBlocks(x + i, y, z + j, x + i, y + 10, z + j, 1)
elif maze[i][j] == "_":
mc.setBlocks(x + i, y, z + j, x + i, y + 10, z + j, 0)
```
### 第三種寫法
```python=
from CBMC import *
mc = CBMC("CodingBarOP1", "minecraft.codingbar.ai", 4706)
x, y, z = mc.getPos()
x1, z1 = x, z
maze = ["XXXXXXXXXXXX"] * 20
#X是牆壁
#_是通道
maze[0] = "X_XXXXXXXXXXXXX"
maze[1] = "X_____________X"
maze[2] = "X_XXX_XX_X_XXXX"
maze[3] = "X_X_X_XX_X____X"
maze[4] = "X___X__X_XXXX_X"
maze[5] = "XXXXX_XX___X__X"
maze[6] = "X_____X_XX_X_XX"
maze[7] = "X_XXX_X_XX_X_XX"
maze[8] = "XX____X_______X"
maze[9] = "XX_XXXXXXXXXX_X"
maze[10]= "XX_X_X_____XX_X"
maze[11]= "YY_Y_Y_Y_Y_YY_Y"
maze[12]= "XX_X_X_X_X_XX_X"
maze[13]= "X______XX__X__X"
maze[14]= "X_XXXXXXX_XXXXX"
maze[15]= "XX_X_XX_______X"
maze[16]= "XX_X_X_X_XXXX_X"
maze[17]= "X______XX___X_X"
maze[18]= "X_XXXX____X___X"
maze[19]= "XXXXXXXXX_XXXXX"
for i in range(len(maze)):
for k in range(len(maze[i])):
if maze[i][k] == "X":
mc.setBlocks(x + i, y, z + k, x + i, y + 10, z + k, 1)
elif maze[i][k] == "Y":
mc.setBlocks(x + i, y, z + k, x + i, y + 10, z + k, 57)
elif maze[i][k] == "_":
mc.setBlocks(x + i, y, z + k, x + i, y + 10, z + k, 0)
mc.setBlock(x + i, y + 11, z + k, 20)
```
# 特殊部分
## 圓&球
### 建立圓環
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x, y, z = mc.getPos()
r = 10
for i in range(-r, r + 1):
for j in range(-r, r + 1):
if r - 0.5 < (i ** 2 + j ** 2) ** 0.5 < r + 0.5:
mc.setBlock(x + i,y + j, z + k, 1)
```
### 建立球殼
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x, y, z = mc.getPos()
r = 10
for i in range(-r, r + 1):
for j in range(-r, r + 1):
for k in range(-r, r + 1):
if r - 0.5 < (i ** 2 + j ** 2 + k ** 2) ** 0.5 < r + 0.5:
mc.setBlock(x + i,y + j, z + k, 1)
```
### 建立橢圓
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x, y, z = mc.getPos()
# 自己在一個焦點的橢圓
def ra(x, y, z, x1, y1, z1):
return ((x - x1) ** 2 + (y - y1) ** 2 + (z - z1) ** 2) ** 0.5
a = 20
gamma = 15 # 焦點到中心的距離
for i in range(-2 * a - 1, 2 * a + 1):
for j in range(-2 * a - 1, 2 * a + 1):
for k in range(-2 * a - 1, 2 * a + 1):
if 2 * a - 1 < ra(x, y, z, x + i, y + j, z + k) + ra(x - gamma * 2, y, z, x + i, y + j, z + k) < 2 * a + 1:
mc.setBlock(x + i, y + j, z + k, 1)
```
## 方塊類
### 魔術方塊
#### 版本V1
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x, y, z = mc.getPos()
n = 10
m = 10
o = 10
for i in range(n):
for j in range(m):
for k in range(o):
if (i % 3 == 0 and (j or k)) or (j % 3 == 0 and (i or k)) or (k % 3 == 0 and (j or i)):
mc.setBlock(x + i, y + j, z + k, 35, 15)
if not (i + j) or not (i + k) or not (j + k) or (i == 0 and j == m - 1) or (i == n - 1 and j == 0) or (k == 0 and j == m - 1) or (k == o - 1 and j == 0) or (i == 0 and k == o - 1) or (i == n - 1 and k == 0):
mc.setBlock(x + i, y + j, z + k, 35, 15)
elif (j == m - 1 and k == o - 1) or (i == n - 1 and j == m - 1) or (i == n - 1 and k == o - 1):
mc.setBlock(x + i, y + j, z + k, 35, 15)
elif i == 0 and j % 3 != 0 and k % 3 != 0:
mc.setBlock(x + i, y + j, z + k, 35, 0)
elif i == n - 1 and j % 3 != 0 and k % 3 != 0:
mc.setBlock(x + i, y + j, z + k, 35, 5)
elif j == 0 and i % 3 != 0 and k % 3 != 0:
mc.setBlock(x + i, y + j, z + k, 35, 3)
elif j == m - 1 and i % 3 != 0 and k % 3 != 0:
mc.setBlock(x + i, y + j, z + k, 35, 14)
elif k == 0 and i % 3 != 0 and j % 3 != 0:
mc.setBlock(x + i, y + j, z + k, 35, 1)
elif k == o - 1 and i % 3 != 0 and j % 3 != 0:
mc.setBlock(x + i, y + j, z + k, 35, 4)
```
#### 版本V2
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
n = 10
m = 10
o = 10
for i in range(n):
for j in range(m):
for k in range(o):
if i == 0:
if j % 3 == 0 or k % 3 == 0:
mc.setBlock(x + i, y + j, z + k, 35, 15)
else:
mc.setBlock(x + i, y + j, z + k, 35, 0)
elif j == 0:
if i % 3 == 0 or k % 3 == 0:
mc.setBlock(x + i, y + j, z + k, 35, 15)
else:
mc.setBlock(x + i, y + j, z + k, 35, 1)
elif k == 0:
if i % 3 == 0 or j % 3 == 0:
mc.setBlock(x + i, y + j, z + k, 35, 15)
else:
mc.setBlock(x + i, y + j, z + k, 35, 14)
elif i == n - 1:
if j % 3 == 0 or k % 3 == 0:
mc.setBlock(x + i, y + j, z + k, 35, 15)
else:
mc.setBlock(x + i, y + j, z + k, 35, 3)
elif j == m - 1:
if i % 3 == 0 or k % 3 == 0:
mc.setBlock(x + i, y + j, z + k, 35, 15)
else:
mc.setBlock(x + i, y + j, z + k, 35, 4)
elif k == o - 1:
if i % 3 == 0 or j % 3 == 0:
mc.setBlock(x + i, y + j, z + k, 35, 15)
else:
mc.setBlock(x + i, y + j, z + k, 35, 5)
```
### 顯示輸入的數字
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x, y, z = mc.getPos()
#儲存數字的圖案方塊ID
lists = [[[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 173, 173, 173, 35], [35, 173, 35, 35, 35, 173, 35], [35, 173, 173, 173, 173, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 173, 35, 35, 35, 35, 35], [35, 173, 35, 35, 35, 35, 35], [35, 173, 173, 173, 173, 173, 35], [35, 173, 35, 35, 173, 35, 35], [35, 173, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 35, 173, 173, 173, 35], [35, 173, 35, 173, 35, 173, 35], [35, 173, 173, 173, 35, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 35, 173, 173, 35], [35, 173, 35, 173, 35, 173, 35], [35, 173, 35, 173, 35, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 173, 173, 173, 35], [35, 35, 35, 173, 35, 35, 35], [35, 35, 35, 173, 173, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 173, 35, 173, 35], [35, 173, 35, 173, 35, 173, 35], [35, 173, 35, 173, 173, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 173, 35, 173, 35], [35, 173, 35, 173, 35, 173, 35], [35, 173, 173, 173, 173, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 173, 173, 173, 35], [35, 35, 35, 35, 35, 173, 35], [35, 35, 35, 35, 173, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 173, 173, 173, 35], [35, 173, 35, 173, 35, 173, 35], [35, 173, 173, 173, 173, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]], [[35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35], [35, 173, 173, 173, 173, 173, 35], [35, 173, 35, 173, 35, 173, 35], [35, 173, 35, 173, 173, 173, 35], [35, 35, 35, 35, 35, 35, 35], [35, 35, 35, 35, 35, 35, 35]]]
#輸入最多16位數的正整數,輸入-1停止程式
while True:
n = input()
if n == "-1":
break
for j in range(7):
for k in range(7):
for i in range(len(n)):
mc.setBlock(x, y + k, z - j + (7 * i), lists[int(n[i])][j][k])
```
## 紀錄檔案
### 紀錄id
```python=
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
s = []
for i in range(8):
sy = []
for j in range(5):
sz = []
for k in range(8):
bid = mc.getBlock(x + i, y + j, z + k)
sz.append(bid)
sy.append(sz)
s.append(sy)
print(s)
```
### 使用檔案
```python=
S = <儲存的檔案>
from CBMC import *
mc = CBMC("自己的ID", "minecraft.codingbar.ai", <port>)
x, y, z = mc.getPos()
for i in range(len(s)):
for j in range(len(s[i])):
for k in range(len(s[i][j])):
mc.setBlock(x + i, y + j, z + k, s[i][j][k])
```
## 聊天室操作
### 說位置
```python=
from CBMC import *
mc = CBMC("自己的ID","minecraft.codingbar.ai",<port>)
x,y,z = mc.getPos()
mc.say("我在{0} , {1}, {2},大家好啦".format(x,y,z))
```