1- بعد از اینکه کاربر عدد اول رو زد و بعدش عدد دوم رو زد ممکنه از این به بعد فقط علامت مساوی رو بزنه که آخرین کاری که کاربر کرده هی تکرار میشه. مثلا زده ۳ بعد به علاوه رو زده بعد زده ۵ و از این به بعد فقط مساوی رو می زنه. اینجا باید روی ماشین حساب اعداد زیر چاپ بشه 8 بعد 13 بعد ۱۸ بعد ۲۳ و ....
2- بعد از اینکه کاربر عدد دوم رو زد جای مساوی مثلا عملگر به علاوه رو بزنه که اینجا باید محاسبات انجام بشه و نتیجه آماده ی جمع شدن با عدد بعدی بشه. مثلا اول زده ۷ بعد زده به علاوه بعد زده ۴ الان اگه مساوی بزن که خب ۱۱ چاپ میشه ولی اگه مثلا عملگر ضرب رو بزنه باید روی صفحه عدد ۱۱ چاپ بشه و عدد ۱۱ در عدد بعدی که کاربر وارد می کنه ضرب بشه.
سوال
Tohidda 0
سلام بزرگواران
من ماشین حساب تو اندروید رو وقتی می نویسم
این کارا رو چطوری انجام بدم
1- بعد از اینکه کاربر عدد اول رو زد و بعدش عدد دوم رو زد ممکنه از این به بعد فقط علامت مساوی رو بزنه که آخرین کاری که کاربر کرده هی تکرار میشه. مثلا زده ۳ بعد به علاوه رو زده بعد زده ۵ و از این به بعد فقط مساوی رو می زنه. اینجا باید روی ماشین حساب اعداد زیر چاپ بشه 8 بعد 13 بعد ۱۸ بعد ۲۳ و ....
2- بعد از اینکه کاربر عدد دوم رو زد جای مساوی مثلا عملگر به علاوه رو بزنه که اینجا باید محاسبات انجام بشه و نتیجه آماده ی جمع شدن با عدد بعدی بشه. مثلا اول زده ۷ بعد زده به علاوه بعد زده ۴ الان اگه مساوی بزن که خب ۱۱ چاپ میشه ولی اگه مثلا عملگر ضرب رو بزنه باید روی صفحه عدد ۱۱ چاپ بشه و عدد ۱۱ در عدد بعدی که کاربر وارد می کنه ضرب بشه.
کد هام هم به این صورتن
package com.example.administrator.test2; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import java.text.DecimalFormat; public class MainActivity extends AppCompatActivity { String string=""; int temp; int opearand; int op1; int op2; String optr; TextView tt1; Button bb1; Button bb2; Button bb3; Button bb4; Button bb5; Button bb6; Button bb7; Button bb8; Button bb9; Button bb10; Button bb11; Button bb12; Button bb13; Button bb14; Button bb15; Button bb16; Button bb20; float mValueOne , mValueTwo ,result; boolean mAddition , mSubtract ,mMultiplication ,mDivision ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViews(); bb1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(" " ); } }); bb2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"1" ); } }); bb3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"2" ); } }); bb4.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"3" ); } }); bb5.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (tt1 == null){ tt1.setText(""); }else { mValueOne = Float.parseFloat(tt1.getText() + ""); mMultiplication = true; tt1.setText(null); } } }); bb6.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"4" ); } }); bb7.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"5" ); } }); bb8.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"6" ); } }); bb9.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { mValueOne = Float.parseFloat(tt1.getText()+""); mDivision = true ; tt1.setText(null); } }); bb10.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"7" ); } }); bb11.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"8" ); } }); bb12.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"9" ); } }); bb13.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { mValueOne = Float.parseFloat(tt1.getText() + ""); mSubtract = true ; tt1.setText(null); } }); bb14.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"0" ); } }); bb20.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { tt1.setText(tt1.getText()+"."); } }); bb15.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { mValueTwo = Float.parseFloat(tt1.getText() + ""); if (mAddition == true){ result = mValueOne + mValueTwo; tt1.setText(result +""); mAddition = false; } if (mSubtract == true){ tt1.setText(mValueOne - mValueTwo+""); mSubtract=false; } if (mMultiplication == true){ tt1.setText(mValueOne * mValueTwo+""); mMultiplication=false; } if (mDivision == true){ tt1.setText(mValueOne / mValueTwo+""); mDivision=false; } } }); bb16.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { if (tt1 == null) { tt1.setText(""); } else if{ mValueOne = Float.parseFloat(tt1.getText() + ""); mAddition = true; tt1.setText(null); } else { result = mValueOne + mValueTwo; tt1.setText(result +""); } } }); } private boolean isNumber(String str) { if(str.length() ==0) { return false; } for(int i = 0; i< str.length();i ++) { if( ('0' <= str.charAt(i) && str.charAt(i) <= '9')==false ) { return false; } } return true; } private void findViews() { bb1 = (Button) findViewById(R.id.b1); bb2 = (Button) findViewById(R.id.b2); bb3 = (Button) findViewById(R.id.b3); bb4 = (Button) findViewById(R.id.b4); bb5 = (Button) findViewById(R.id.b5); bb6 = (Button) findViewById(R.id.b6); bb7 = (Button) findViewById(R.id.b7); bb8 = (Button) findViewById(R.id.b8); bb9 = (Button) findViewById(R.id.b9); bb10 = (Button) findViewById(R.id.b10); bb11 = (Button) findViewById(R.id.b11); bb12 = (Button) findViewById(R.id.b12); bb13 = (Button) findViewById(R.id.b13); bb14 = (Button) findViewById(R.id.b14); bb15 = (Button) findViewById(R.id.b15); bb16 = (Button) findViewById(R.id.b16); bb20 = (Button) findViewById(R.id.b20); tt1 = (TextView) findViewById(R.id.et1); } }
لینک ارسال
به اشتراک گذاری در سایت های دیگر
0 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.