我用 Android 模擬器做了一個 10 進位數值轉換成 2 進位的小程式 :
運作原理 :
程式中, 我將輸入的 10 進位數值以迴圈方式不斷用 2 去除, 每除一次所得的餘數 (為 0 或 1) 依序存入陣列中, 最後再用迴圈把陣列內容以倒置的方式取出, 便可得出答案.
程式碼如下 :
package a.b.c;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class BtoD extends Activity {
/** Called when the activity is first created. */
int s,i;
int[] ba = new int[64];
String su;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final EditText editText1 = (EditText)findViewById(R.id.editText1);
final TextView textView3 = (TextView)findViewById(R.id.textView3);
final Button button1= (Button)findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
i = 0; su = "";
s = Integer.parseInt(editText1.getText().toString());
while (s > 1)
{
ba[i] = s % 2;
i++ ;
s = s/2;
}
if(s==1 || s==0)
ba[i] = s;
for(int j=i;j>=0;j--)
su += String.valueOf(ba[j]);
textView3.setText(su);
}
});
}
}
整個程式功能過於簡單 ~ 若上傳到 Android Market 會 ... 被笑啊 ! 我只把它當做練習而已 .^_^.
沒有留言:
張貼留言