C# сравнение числа в переменной с дробью

kapelan28

Client
Регистрация
22.09.2015
Сообщения
479
Реакции
190
Баллы
43
Собственно проблема - надо сравнить число в переменной с дробным числом и дальше уже выполнять код исходя из результатов. К примеру, сравнить 1 и 0.04 или 1.000 и 0.04.
Для целочисленных значений есть кусок кода, но не смог его адаптировать к этим условиям (пробовал конвертировать в flat, но результата не получилось - либо ошибка при компиляции, либо ошибка при выполнении кода)
Код:
Развернуть Свернуть Копировать
string strPattern3 = @"^.*?(?=\.)";
string strRegexResult3 = new Regex(strPattern3).Match(strRegexResult).Value;
int balanceAkk = Convert.ToInt32(strRegexResult3);
if (balanceAkk<2){
    project.SendInfoToLog("!", true);
    throw new Exception("");
}
 
C#:
Развернуть Свернуть Копировать
string value1;
double number1;
string value2;
double number2;

value1 = project.Variables["ваше строковое число1"].Value;
value2 = project.Variables["ваше строковое число2"].Value;
      if (Double.TryParse(value1, out number1)&&Double.TryParse(value2, out number2))
         {
if (number1>number2) return number1;
}
типа такого должно быть
 
  • Спасибо
Реакции: kapelan28
потестировал код, немного его дополнил, но результата не вижу. Добавил информирование о выполнении, но в логе ничего нет
Код:
Развернуть Свернуть Копировать
string value1;
double number1;
string value2;
double number2;
value1 = "0.000";
value2 = "0.04";
if (Double.TryParse(value1, out number1)&&Double.TryParse(value2, out number2))
         {
if (number1>number2)
{
    project.SendInfoToLog ("Oki Oki");
    return number1;
}else{
    project.SendErrorToLog ("Error");
}
}
Я где-то ошибку сделал?
 
C#:
Развернуть Свернуть Копировать
string value1 = "0.000";
string value2 = "0.04";
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");

if (double.Parse(value1, culture) > double.Parse(value2, culture)) {
    project.SendInfoToLog("Oki Oki");
    return value1;
}
else {
    project.SendErrorToLog("Error");
}
 
C#:
Развернуть Свернуть Копировать
string value1 = "0.000";
string value2 = "0.04";
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");

if (double.Parse(value1, culture) > double.Parse(value2, culture)) {
    project.SendInfoToLog("Oki Oki");
    return value1;
}
else {
    project.SendErrorToLog("Error");
}
Все работает! Спасибо большое! :bt:
 
  • Спасибо
Реакции: keltuzhaknut
Спасибо!!
 
Последнее редактирование:
Код:
Развернуть Свернуть Копировать
string value1 = project.Variables["price_dlya_raboty"].Value;
string value2 = project.Variables["min_stop_cena"].Value;
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("en-US");
if (double.Parse(value1, culture) > double.Parse(value2, culture)) {
    return "Yes";
}
else {
    return "No";
}

Подскажите, пожалуйста, делаю так.
Ошибка:
Выполнение действия CSharp OwnCode Входная строка имела неверный формат.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)