با سلام خدمت تموم اعضای سایت کلیدستان
مدتیه که دارم روی یک ماشین حساب اندرویدی کار میکنم
اما یه مشکل اساسی سر راهم قرار گرفته و اون این هستش که توی معادلات چطور به ماشین حساب بفهمون که کجا از اعداد اعشاری و کجا از اعداد صحیح استفاده کنه...
به عنوان مثال
اگر کاربر وارد کرد :
2 + 3 ، چاپ بشه 5
و اگر کابر وارد کرد :
2 + 2.5 ، چاپ بشه 4.5
به صورت پیشرفته تر هم مثلا اگه کاربر وارد کرد 9 + Sin 9
چاپ بشه 9.156434
و بعد از این اگه وارد کرد 9 + 9.156434
چاپ بشه 18.156434
واضح تر بگم که میخوام ماشین حساب موقع خوندن کد ها بتونه اعداد صحیح و اعشاری رو با هم جمع یا ... کنه
اینو هم بگم که از همچین کدی توی کلید جمع +
و همچین کدی توی کلید مساوی = استفاده کردم ولی به نتیجه دلخواه نرسیدم... ، لطفا اگه چیزی راجع به این قضیه میدونید راهنمایی کنید، ممنون میشم ♥
مدتیه که دارم روی یک ماشین حساب اندرویدی کار میکنم
اما یه مشکل اساسی سر راهم قرار گرفته و اون این هستش که توی معادلات چطور به ماشین حساب بفهمون که کجا از اعداد اعشاری و کجا از اعداد صحیح استفاده کنه...
به عنوان مثال
اگر کاربر وارد کرد :
2 + 3 ، چاپ بشه 5
و اگر کابر وارد کرد :
2 + 2.5 ، چاپ بشه 4.5
به صورت پیشرفته تر هم مثلا اگه کاربر وارد کرد 9 + Sin 9
چاپ بشه 9.156434
و بعد از این اگه وارد کرد 9 + 9.156434
چاپ بشه 18.156434
واضح تر بگم که میخوام ماشین حساب موقع خوندن کد ها بتونه اعداد صحیح و اعشاری رو با هم جمع یا ... کنه
اینو هم بگم که از همچین کدی توی کلید جمع +
کد پیاچپی:
if (point == 1)
{
tt = Double.parseDouble(text.getText().toString());
}
if (point == 0)
{
tt2 = Integer.parseInt(text.getText().toString());
}
و همچین کدی توی کلید مساوی = استفاده کردم ولی به نتیجه دلخواه نرسیدم... ، لطفا اگه چیزی راجع به این قضیه میدونید راهنمایی کنید، ممنون میشم ♥
کد پیاچپی:
if (point == 1) {
switch (sss) {
case '+':
pp = Double.parseDouble(text.getText().toString());
vis = pp + tt;
text.setText(Double.toString(vis));
vis = 0;
ash = 0;
break;
}
}
if (point == 0) {
switch (sss) {
case '+':
pp2 = Integer.parseInt(text.getText().toString());
vis2 = pp2 + tt2;
text.setText(Integer.toString(vis2));
vis2 = 0;
ash = 0;
break;
}
}