Есть такой код:
double value = Convert.ToDouble(s);
double onePercent = value / 100;
value = value + onePercent * 10;
return value.ToString();
value = value + 10%
Как сделать так, чтобы в зависимости от числа, добавлялся уникальный %
?
Например:
200 + 30%
600 + 25%
1000 + 20%
1400 + 15%
2000 + 10%
То есть хотелось бы, чтобы результатом исполнения было не value = value + 10%
, a value = value + n%
!
n
= процент, в зависимости от числа value
(пример выше)
Пожалуйста, в зависимости от суммы числа:
if (value == 200)
value = value + onePercent * 30;
else if (value == 600)
value = value + onePercent * 25;
else if (value == 1000)
value = value + onePercent * 20;
else if (value == 1400)
value = value + onePercent * 15;
else if (value == 2000)
value = value + onePercent * 10;
Ваш вопрос не слишком ясен: Вы не описали, как зависит процент от значения value
!
Пришлось догадываться и выводить формулу на основе Ваших примеров самостоятельно)
Функция получилась следующей:
// Получим число + некий процент от него
private static double GetValue(double Value) =>
Value < 0 ?
// Число не может быть меньше нуля (у Вас это некая сумма, как я понял)
throw new ArgumentException() :
// Если число меньше порога, когда процент начинает становиться отрицательным
Value < 2800 ?
// Добавить процент
(Value + (30.0 - (int)(Value - 1) / 400 * 5) / 100 * Value) :
// Вернуть число без начислений
Value;
Пример работы:
Console.WriteLine(GetValue(200)); // 260 == 200 + 200 * 0.30
Console.WriteLine(GetValue(600)); // 750 == 600 + 600 * 0.25
Console.WriteLine(GetValue(1000)); // 1200 == 1000 + 1000 * 0.20
Console.WriteLine(GetValue(1400)); // 1610 == 1400 + 1400 * 0.15
Console.WriteLine(GetValue(2000)); // 2200 == 2000 + 2000 * 0.10
Надеюсь, мое решение помогло Вам, если же нет - детальнее опишите проблему!
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Создаю игру в unityПишу скрипты в Visual Studio 2017
Как мне передать некую дополнительную информацию, когда происходит событие клика на кнопку? К примеру, существует ListBox, который выводит информацию...
Есть ли возможность использовать шарповый энум как в плюсах? Вот что я имею ввиду: