BloggerAds

2013年10月8日 星期二

[Android] 模糊理論以年齡程度值設計一個簡易APP


簡易的設計一個年齡的程度值

60歲以上 程度值為= 1
40歲以下程度值為= 0
其他的年齡計算 = 0.05*tmpv-2



java代碼:
package com.example.test1008;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

private Button bt1;
private EditText ed1;
private TextView tv1;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

bt1=(Button)findViewById(R.id.button1);
bt1.setOnClickListener(but_ok);

}
private OnClickListener but_ok = new OnClickListener (){

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
ed1=(EditText)findViewById(R.id.editText1);
tv1=(TextView)findViewById(R.id.textView3);
float va101=Float.parseFloat(ed1.getText().toString());
tv1.setText("輸出完成:"+oldman(va101));
}};
private float oldman(float tmpv){
float retstr = 0;
if(tmpv>60) //60歲以上
retstr=1;
else if(tmpv<40)//小於40歲
retstr=0;
else
retstr=(float)(0.05*tmpv-2);
return retstr;
}
}


XML代碼
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/AbsoluteLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ff00ff"
    tools:context=".MainActivity" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="39dp"
        android:layout_y="102dp"
        android:text="溫度"
        android:textSize="15sp" />

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="91dp"
        android:layout_y="97dp"
        android:ems="10" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="32dp"
        android:layout_y="208dp"
        android:text="計算" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_x="154dp"
        android:layout_y="226dp"
        android:text="顯示結果" />


</AbsoluteLayout>




結果圖







結論

通常要定義一個人年輕或是老年人,不是非常好定義的,因為有人認為自己60歲還很年輕,有人認為60歲很老,反之是15歲的小孩總不能說他是老人,80歲了不能說他是青年人,因此有模糊的地帶存在。

假設定義40歲以下為0,60歲以上為1,40~60歲本來是個模糊地帶,我們給他賦予一個值,來辨別較靠近1(比較老)或是0(比較年輕),這叫作程度值。




沒有留言:

張貼留言