首頁 > FLEX, 程式設計 > 使用 FLEX-AS3 實作 JAVA 求平均值

使用 FLEX-AS3 實作 JAVA 求平均值

2009年3月15日  瀏覽次數 : 4,035

假日沒遇到甚麼好的題材可以寫,今天就繼續完成我們的 FLEX 實作 JAVA TQC 考題吧,這次寫的題目是計算使用者輸入的數字,並且求平均值,並且要計算到小數點第二位。

image

我們使用 Math.round() 方法來計算四捨五入,這次算是蠻基礎的題目,大家稍微注意一下計算公式就可以很快的把答案做出來囉。

 

JVD07FLEX.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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" fontSize="14">
	<mx:Script>
		<![CDATA[
			import mx.controls.Alert;
			//開始運算解答
			private function clickHandler():void{
				//拆解使用者輸入的數字
				var numsArray:Array = this.input.text.split(" ");
				//使用者只輸入了一個以下的數字
				if(numsArray.length < 2){
					Alert.show("你必須輸入兩個以上的數字","提示");
				//沒有選擇答案的格式
				}else if(this.answerType.selectedValue == null){
					Alert.show("你必須選擇一種答案格式","提示");
				//都正確了才開始計算
				}else{
					//判斷使用者要求答案格式
					switch(this.answerType.selectedValue){
						case 1 :
							//整數運算
							var ans1:int =0;
							for(var i:int=0;i<numsArray.length;i++){
								ans1 += parseInt(numsArray[i]);
							}
							ans1 /= numsArray.length;
							this.anserLabel.text = ans1.toString();
							break;
						case 2 :
							//取到小數點第一位四捨五入
							var ans2:Number =0;
							for(var j:int=0;j<numsArray.length;j++){
								ans2 += parseInt(numsArray[j]);
							}
							ans2 = Math.round((ans2 /= numsArray.length)*10)/10;
							this.anserLabel.text = ans2.toString();
							break;
						case 3 :
							//取到小數點第二位四捨五入
							var ans3:Number =0;
							for(var k:int=0;k<numsArray.length;k++){
								ans3 += parseInt(numsArray[k]);
							}
							ans3 = Math.round((ans3 /= numsArray.length)*100)/100;
							this.anserLabel.text = ans3.toString();
							break;
					}
				}
			}
		]]>
	</mx:Script>
	<mx:Label text="請輸入兩組以上數字,並使用 空白 分隔"/>
	<mx:TextInput id="input" width="400" restrict="0-9 "/>
	<mx:HBox width="454">
		<mx:RadioButtonGroup id="answerType"/>
		<mx:RadioButton label="平均值不含小數" groupName="answerType" value="1"/>
		<mx:RadioButton label="四捨五入小數第一位" groupName="answerType" value="2"/>
		<mx:RadioButton label="四捨五入小數第二位" groupName="answerType" value="3"/>
	</mx:HBox>
	<mx:Button label="計算平均值" click="clickHandler()"/>
	<mx:Label id="anserLabel" text="解答"/>
 
</mx:Application>

Random Posts

Loading…

:: 把這篇好文推到書籤網站與更多人分享吧 ::
  • funp
  • Hemidemi
  • YahooKimo
  • Google
  • udn
  • Haohao
  • Live

相關文章 :

Ausir FLEX, 程式設計 , , , , ,

  1. 2009年3月16日09:30 | #1

    喔!!原來先轉成陣列再取呀!
    php的課沒開成~~

  2. 2009年3月16日10:06 | #2

    @梅干扣肉
    拆解陣列是比較簡單的啦
    這邊用到一個比較少用到的
    RadioButtonGroup & RadioButton 這兩個東西
    然後取值是抓 RadioButtonGroup.selectedValue

    PHP 說延期不知道延到民國幾年
    = = 我看該不會得去別的地方上了

  1. 本篇文章目前尚無任何 trackbacks 和 pingbacks。