使用 FLEX-AS3 實作 JAVA 圓面積與體積計算
又到了我們 使用 FLEX-AS3 實作 JAVA TQC 考題的時候了,今天還是簡易班喔,我們今天要用 AS 的 Math 函數來做一些圓面積阿,取 X 的 Y 次方值,並且這次我們還提供了,Math 的四捨五入與無條件捨去與無條件進位的用法喔,以及如何取到小數點第一位,第二位。
程式的用法都已經註解在程式碼內了喔,不論是取 PI 值,或是四捨五入,無條件捨去與無條件進位的用法都已經註解好了,稍微看一下程式碼就可以了解了,不過我另外補充了一個,如果四捨五入或是無條件捨去與進位,在負數的時候會有點不同的結果,原因是該函數的定義應該是,以無條件進位來說,正確的說法應該是取該數的最大整數,而在負數的時候,最大整數應該是趨近於 0 的數字,但是我們在設定金額的無條件進位,例如對方欠我們錢,那這樣子就會少一元了喔。這時候就應該改用其他的作法,需要判斷正負數。
這個範例應該在 JAVA 也是相同用法,謝謝。
JVD09FLEX.mxml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" fontSize="14" layout="vertical">
<mx:Script>
<![CDATA[
private function clickHandler():void{
var r:int = 0;
this.answerArea.text = "";
r = int(Math.random()*100 + 1);
//三個用法
//1. PI 的算法 Math.PI;
//2. 取 X 的 Y 次方 Math.pow(X,Y);
//3. 取四捨五入的最大整數
this.answerArea.text += "隨機產生的半徑為 : "+r;
this.answerArea.text += "\n\n計算後,直徑為 : "+r*2;
this.answerArea.text += "\n\n計算後,圓面積為 : "+Math.PI*Math.pow(r,2);
this.answerArea.text += "\n四捨五入至小數點第一位,則圓面積為 : "+ Math.round(Math.PI*Math.pow(r,2)*10)/10;
this.answerArea.text += "\n\n計算後,圓體積為 : "+4*Math.PI*Math.pow(r,3)/3;
this.answerArea.text += "\n四捨五入至小數點第一位,則圓體積為 : "+ Math.round(4*Math.PI*Math.pow(r,3)/3*10)/10;
//四捨五入與無條件進位與無條件捨去在負數的時候會有不同的結果
var randomNum:Number = Math.random()*100;
var plusNum:Number = randomNum;
var minusNum:Number = randomNum*-1;
// Math.round 四捨五入的最大整數
// Math.ceil 該數的最大整數 -> 無條件進位
// Math.floor 該數的最小整數 -> 無條件捨去
this.answerArea.text += "\n\n四捨五入與無條件進位與捨去的結果 : 正數";
this.answerArea.text += "\n處理前數字 : "+plusNum;
this.answerArea.text += "\n四捨五入 : "+Math.round(plusNum);
this.answerArea.text += "\n無條件進位 : "+Math.ceil(plusNum);
this.answerArea.text += "\n無條件捨去 : "+Math.floor(plusNum);
this.answerArea.text += "\n\n四捨五入與無條件進位與捨去的結果 : 負數";
this.answerArea.text += "\n處理前數字 : "+minusNum;
this.answerArea.text += "\n四捨五入 : "+Math.round(minusNum);
this.answerArea.text += "\n無條件進位 : "+Math.ceil(minusNum);
this.answerArea.text += "\n無條件捨去 : "+Math.floor(minusNum);
}
]]>
</mx:Script>
<mx:Button label="執行程式" click="clickHandler()"/>
<mx:TextArea id="answerArea" width="500" height="300"/>
</mx:Application> |
Random Posts
Loading…
相關文章 :










可以問你 htaccess嗎..
呵呵~很厲害唷^^
@Elvis
這是幼幼班啦~~
這門課似乎也快要到中級的階段囉!!~
耶~
你的文章老是跑去垃圾留言耶~ 好詭異~
我 PHP 剛學還不熟耶~
不過如果有甚麼問題可以一起討論看看 ^_^
我們可以來交換一下 MSN
Ausir您好唷,再度跟您請教一下 :)
關於您blog中,showExample的圖示來展示flex的程式,如果有一支flex程式會用到PHP程式網頁以及資料庫,那該如何打包這支程式,上傳到網路空間,讓其他閱讀者瀏覽呢? PS:會使用到新增資料到資料庫哦@@” 謝謝您^^
我這個只是超連結一個 SWF 檔案
這樣會對於如果沒有安裝 FLASH PLAYER 的使用者不利
因為他不會提示安裝
如果你要把你的 FLEX 發佈到網站上
你按 FLEX BUILDER 的 PROJECT -> export release build…
就可以建立出發佈的 SWF 跟 HTML
然後在把你的 PHP 檔案那些一起上傳
這樣就可以了~~
@Ausir
謝謝唷^^我在試試看.
你好:
我想請問關於把FLEX發佈到網站上的問題
我有個功能是按下按鈕之後點在canvas上面會出現圖片
但我用了export release build之後
發佈後的網頁就沒辦法出現那些圖片了
想請問為什麼會這樣呢??
@milk
因為 flash player 預設安全性上的考量
因此無法取得非相同網站的資料,網頁 圖片 等等
你必須在對方的網站放入 corssdomain.xml
但是對方應該不會允許你放~~
我看過兩個做法,第一,解開 IMG 的安全性設定,允許取得他網站資料
第二,透過自己網站的 PHP 去取得圖片,再回傳
你用 debug 模式可以看,就是因為他是 debug 模式
移出那個資料夾就會受到安全性管制
那請問如果是在自己的server上放上export release build後的檔案
再放入crossdomain.xml這個檔案,還會有這個問題出現嗎?
@milk
如果是自己的 SERVER 可以不需要 crossdomain.xml 檔案
再次請問這兩個問題
第一個是關於解開安全性設定,我上網查了資料,但是都沒有查到相關的東西,想請問如果要用這個方法該怎麼做呢?
第二個是php的方法,透過php去取得圖片是指去server上抓這兩個圖片然後再回傳到哪裡呢??因為沒學過php所以不太懂
謝謝你^^
@milk
安全性麻…有部分似乎沒辦法解開
所以還是必須要用 crossdomain 檔案
不然就是透過一隻 PHP 去讀取其他網站的資料
意思就是說用 PHP 去當作讀取的 SPY ^_^~