2012-01-17 3 views
0

Я сделал калькулятор качелей как часть домашней работы, которую я сделал, и хотел бы посоветовать о продолжении вычитания в частности. С продолжением сложения это достаточно прямо вперед (например, добавление операндов, а затем дальнейшее добавление оттуда). Это то, что я сделал.Что касается вычитания по продолжительности

if(totalCount > 1) 
    { 
     if(sbOne.length() > 0) 
     { 
      operandOne = Double.parseDouble(sbOne.toString()); 
     } 
     else 
     { 
      operandOne = 0; 
     } 

     if(sbTwo.length() > 0) 
     { 
      operandTwo = Double.parseDouble(sbTwo.toString()); 

     } 
     else 
     { 
      operandTwo = 0; 
     } 
     result = operandOne + operandTwo; 
     totalResult += result; 
     screenResult = Double.toString(totalResult); 
     txtDisplay.setText(screenResult); 
     notCalculate = true; 
     sbOne.setLength(0); 
     sbTwo.setLength(0); 

Как я могу достичь того же результата путем вычитания одного операнда из другого, а затем продолжить вычитанием оттуда далее.

+3

Вы имеете в виду, как 'totalResult - = результат;'? –

+0

Не совсем уверен, что вы просите здесь. Заканчивается^ – Alex

+0

Такое же замечание, как Alex –

ответ

2

Ваш код кажется запутанным, особенно, поскольку он неполный и не компилируемый. Моя интерпретация вашего кода такова: у вас есть два предположительно положительных значения, которые вы добавляете вместе, после чего вы добавляете эту сумму в общую сумму, которую вы уже имеете. Моя интерпретация вашего вопроса такова: вы хотите вычесть эту сумму из общей суммы. Решением этого является использование Hot Licks, которое должно использовать только следующую операцию: totalResult -= result;. Если вы хотите, чтобы сделать возможным, чтобы решить, хотите ли вы добавить или вычесть, добавить логический флаг, а именно:

/*somewhere in your code to determine whether you add or subtract, 
    have a button or something which changes this value. 
*/ 
boolean isAdding = true; 

//... 

//button pressed 
isAdding = false; 

//... 

//your calculating code goes here 
if(isAdding) 
    totalResult += result; 
else 
    totalResult -= result; 

//all of the other stuff 
+0

Спасибо за совет. – Arianule

Смежные вопросы