Возможна ли замена знака?

 

Добрый день, скажите, как поменять знак с + на - и наоборот))

Есть длинная формула и в ней разница только в знаке, думал как бы облегчить код.

 
int num = 5;
int sum = -num + 1;
Print((string)num + " - " + (string)sum + " - " + (string)MathAbs(sum));
 
Konstantin Nikitin:

Спасибо, только мне как раз надо менять знак, а не число))

int sum = (5 + 1+...) - (5 + 1+...)+1+...;
int sum = (5 + 1+...) + (5 + 1+...)+1+...;
 
Tavol:

Спасибо, только мне как раз надо менять знак, а не число))

Проще говоря - знак записать в переменную. Меня тоже этот вопрос одно время волновал. Потом как-то стало не актуально. Но, все таки интересно, как это сделать.

 
Evgeniy Zhdan:

Проще говоря - знак записать в переменную. Меня тоже этот вопрос одно время волновал. Потом как-то стало не актуально. Но, все таки интересно, как это сделать.

Tavol
:

Спасибо, только мне как раз надо менять знак, а не число))

Можно так написать

int sum = (5 + 1+...);
int summ = (5 + 1+...)
sum = (если_условие_подходит_складываем_иначе_минус ? sum + summ : sum - summ)+1+...;

На скорую руку другого пока ни чего в голову не пришло.

Evgeniy Zhdan:

Проще говоря - знак записать в переменную. Меня тоже этот вопрос одно время волновал. Потом как-то стало не актуально. Но, все таки интересно, как это сделать.

Чаще переменную нужно приводить к нужному знаку. Если уж стабильно нужно отрицательное число, чтоб не напороться на два минуса, которые дадут плюс. То пишите.

int num = -5;
Print((string)-MathAbs(num));

То-есть приводите к абсолютному и уже его делайте отрицательным.

 
Evgeniy Zhdan:

Проще говоря - знак записать в переменную. Меня тоже этот вопрос одно время волновал. Потом как-то стало не актуально. Но, все таки интересно, как это сделать.

оу, тогда целая простыня))

  int znak = +;

operand and expression expected ))

 
Evgeniy Zhdan:

Проще говоря - знак записать в переменную. Меня тоже этот вопрос одно время волновал. Потом как-то стало не актуально. Но, все таки интересно, как это сделать.

в школе математика прогуляна наглухо ?

y=(sign)*f(x)

sign : -1, 1

 
Konstantin Nikitin:

Можно так написать

На скорую руку другого пока ни чего в голову не пришло.

Cпасибо

 
Maxim Kuznetsov:

в школе математика прогуляна наглухо ?

y=(sign)*f(x)

sign : -1, 1

есть такое)))тело вроде присутствовало, на этом все)

 
Maxim Kuznetsov:

в школе математика прогуляна наглухо ?

y=(sign)*f(x)

sign : -1, 1

Я говорю - "знак (действие) записать в переменную" в mql4-5.

Пример того, что надо:

string move= "";//сюда действие: + || - || / || *

if(1<2)  move = "/";

else   move = "*";

double res = 10 move 5; // должен получиться результат или 2 или 50 в зависимости от действия

Надеюсь, доходчиво.

 
Evgeniy Zhdan:

Я говорю - "знак (действие) записать в переменную" в mql4-5.

Пример того, что надо:

Надеюсь, доходчиво.

 
Причина обращения: