步驟1/4:提醒前幾集
小基礎是一種旨在具有有趣編程的編程的啟動語言。這是一項新的微軟計劃,旨在鼓勵最年輕的(從7到77年)發現節目的樂趣。要了解更多信息,請單擊 - ICI- 。
在我們的第一集(看ICI ),我們提出了開發環境,表明該軟件不僅可以創建小型簡單應用程序(在控制台模式下),還可以質疑Web服務(例如Flickr((ICI )
在第二集(看ICI),我們研究了一些語言的基本概念變量,捲髮和測試。我們用神秘數量((看ICI)。
在第三集(看ICI),我們已經看到,小基礎是受語言啟發的標識提供非常有趣和教育的圖形說明(看ICI)
在第四集中,我們將發現子程序和子指導的作用。同時,我們將重製乒乓球,現代視頻遊戲的祖先!
步驟2/4;初步警告
小基礎,在其第一個Beta版中稱為“ 2008年10月”,是一個錯誤的受害者,該錯誤阻止了法國區域中配置的窗口上的程序正確運行。
為了使應用程序運行良好,您必須暫時將Windows區域參數放在“英語(美國)”:
- 去配置面板
- 去區域參數(區域和語言選擇)
- 打開標籤格式
- 在彈出菜單中當前格式, 選擇英語(美國)
- 單擊申請。
注意到:
此錯誤將在下一個中得到糾正“ beta”de Small Basic(“ 2008年聖誕節版本”)預計在2008年12月底。
步驟3/4:子程序的概念
一個程序首先是一系列的順序訂單。但是,經常會重複某些代碼序列。與其無休止地複制這些線路,不如在我們需要的每次所謂的子程序中僅寫一次。因此,如果您必須更改這些行,則只需要修改子程序,而不必像重複指令一樣重複其每次發生的修改。
因此,子程序是代碼的一部分,通常可以從主程序中的任何地方使用特定的事情,並且可以根據需要的多次調用。
子程序提供的優點是使代碼更可讀。然後,我們談論結構化編程。任何程序以下以下表格:
1時代主要程序指令
2Th主要程序指令
…
n的第n個指令,要求子程序n°x
…
主要程序的最後指示
'
sub sousprogramme1
1時代子程序指令1
…
子程序的最後指令1
endub
'
sub sousprogramme2
1時代子程序指令2
…
子程序的最後指令2
endub
例如,下面的程序顯示用戶按鍵上按鍵時的時間(在鍵上除外[Q],在這裡使用該程序)。
'主要程序的開始
entree =“”
while(text.converttolowercase(entree)<>“ q”)
pacture()
entree = textwindow.read()
Eld
'主要程序的結尾
'子程序:
子 - 寄生
textwindow.writeline(“”)
textwindow.write(“當前是:”)
textwindow.writeline(clock.time)
endub
步驟4/4:乒乓球
子程序還用於管理Windows事件並與鼠標進行交互。我們將使用乒乓球遊戲說明這一原理“ onmousemove”。
該程序使用了我們尚未研究的概念,但我們將在第五集中看到:形狀。這些圖形對像對於遊戲非常有用,因為它們可以分配名稱,然後使用這些名稱表示我們要移動這些對象。下面的程序使用兩個“形狀”。一個球(名字叫球)和一個球拍(命名為槳)。
這是乒乓球節目。您要在之後改進它...
'主要程序的開始
初始化()
boucleprincipale()
program.end()
'主要程序的結尾
'該子程序初始化屏幕和變量
子初始化
graphicswindow.backgroundColor =“ darkblue”
graphicswindow.pencolor =“紅色”
gw = graphicswindow.width
GH = GraphicsWindow.Height
Turtle.Show()
海龜。 Speed= 10
Turtle.penup()
Turtle.turn(180)
Turtle.move(GH/2 - 2)
Turtle.turnright()
Turtle.move(GW/2 - 2)
Turtle.pendown()
Turtle.turnright()
Turtle.move(GH-4)
Turtle.turnright()
Turtle.move(GW-4)
Turtle.turnright()
Turtle.move(GH-4)
海龜。
graphicswindow.pencolor =“藍色”
PADDLE = GraphicsWindow.AddRectangle(120,12)
graphicswindow.moveshape(槳,0,graphicswindow.height - 12)
球= GraphicsWindow.addellipse(16,16)
graphicswindow.mousemove = onmousemove
x = 0
y = 0
deltax = 1
deltay = 1
得分= 0
endub
'該子程序管理球的位移和得分
亞環蛋白
而(y <gh)
X = X + Deltax
y = y + deltay
if(x> = gw - 16或x deltax = -deltax
Endif
if(y deltay = -deltay
Endif
PADX = GraphicsWindow.getLeftofShape(PADDLE)
if(y = gh - 28 and x> = padx和x deltay = -deltay
得分=得分+1
graphicswindow.brushcolor =“ darkblue”
graphicswindow.fillectangle(GW/2-60,10,100,22)
graphicswindow.brushcolor =“黃色”
GraphicsWindow.drawText(GW/2-60,20,”得分:“+分數)
Endif
graphicswindow.moveshape(球,x,y)
program.delay(5)
Eld
graphicswindow.showmessage(“你迷路了!”,“槳”)
endub
'這個子例程管理球拍的運動
sub onmousemove
paddlex = graphicswindow.mousex
graphicswindow.moveshape(Paddle,Paddlex - 60,GraphicsWindow.Height - 12)
endub
Opera One-促進AI的Web瀏覽器
作者:歌劇