Как реализовать умножение и запись в переменную проекта

  • Автор темы Автор темы amyboose
  • Дата начала Дата начала

amyboose

Client
Регистрация
21.04.2016
Сообщения
2 311
Реакции
1 192
Баллы
113
Есть 2 похожих кода (меняются только переменные и числа), которые записывают данные каждый в свою переменную, вот пример:
Код:
Развернуть Свернуть Копировать
//преобразование значений переменных проекта в целые числа и их передача в переменные сниппета
float a = float.Parse(project.Variables["min"].Value);
// вычисление в переменную проекта
return a * 0.95;
Не получается решить 2 проблемы:
1) Изначально число идет в формате с точкой, например, 1.5. Как без экшена замены преобразовать его в число с запятой, чтобы сниппет его принял, а после вычисления записал заново в формате с точкой вместо запятой?
2) Как совместить несколько кодов в один, чтобы сразу в сниппете записать значения в несколько переменных, например, a*0.95 в переменную "min", a*1.05 в переменную "max"?
P.S. JS не использую по причине того, что Zennoposter ругается на то, что проект работает без браузера и поэтому он пишет не использовать JS.
 
Последнее редактирование:
C#:
Развернуть Свернуть Копировать
float a = float.Parse(project.Variables["var"].Value.Replace(".", ","));
project.Variables["min"].Value = Convert.ToString(a * 0.95).Replace(",", ".");
project.Variables["max"].Value = Convert.ToString(a * 1.05).Replace(",", ".");
 
  • Оценить
Реакции: Ha9p, kagorec и amyboose
C#:
Развернуть Свернуть Копировать
float a = float.Parse(project.Variables["var"].Value.Replace(".", ","));
project.Variables["min"].Value = Convert.ToString(a * 0.95).Replace(",", ".");
project.Variables["max"].Value = Convert.ToString(a * 1.05).Replace(",", ".");
Огромное спасибо. Всё работает просто отлично.
 
  • Оценить
Реакции: Dimionix
Здравствуйте. Есть в проекте две переменные "a" и "b". Переменные являются числами с точками 1.5 и 1.0034.
Как сделать на C# или JS код a = a * b. Спасибо.
 
Здравствуйте. Есть в проекте две переменные "a" и "b". Переменные являются числами с точками 1.5 и 1.0034.
Как сделать на C# или JS код a = a * b. Спасибо.
Выше пример, его можно брать за основу. Ваш код будет таким:
Код:
Развернуть Свернуть Копировать
float a = float.Parse(project.Variables["peremennaya_a"].Value.Replace(".", ","));
float b = float.Parse(project.Variables["peremennaya_b"].Value.Replace(".", ","));
project.Variables["resultat"].Value = Convert.ToString(a * b).Replace(",", ".");
Вместо последней строки, если нужно записать в переменную с запятой вместо точки.
Код:
Развернуть Свернуть Копировать
project.Variables["resultat"].Value = Convert.ToString(a * b);
 
Последнее редактирование:
  • Оценить
Реакции: originalmalek
Если бы это была не моя тема, то я бы подумал "как можно не знать такие элементарные вещи в C#" :ah:
 
Выше пример, его можно брать за основу. Ваш код будет таким:
Код:
Развернуть Свернуть Копировать
float a = float.Parse(project.Variables["peremennaya_a"].Value.Replace(".", ","));
float b = float.Parse(project.Variables["peremennaya_b"].Value.Replace(".", ","));
project.Variables["resultat"].Value = Convert.ToString(a * b).Replace(",", ".");
Вместо последней строки, если нужно записать в переменную с запятой вместо точки.
Код:
Развернуть Свернуть Копировать
project.Variables["resultat"].Value = Convert.ToString(a * b);

Переменные а и b уже есть в проекте. Мне надо перезаписать a переменную непосредственно в проекте.
Возможна ли такая реализация?

project.Variables["a"].Value = Convert.ToString(project.Variables["a"].Value * project.Variables["b"].Value);

У меня такой код не выполняется.
 
Переменные а и b уже есть в проекте. Мне надо перезаписать a переменную непосредственно в проекте.
Возможна ли такая реализация?
C#:
Развернуть Свернуть Копировать
project.Variables["a"].Value = Convert.ToString(int.Parse(project.Variables["a"].Value) * int.Parse(project.Variables["b"].Value));
 
C#:
Развернуть Свернуть Копировать
project.Variables["a"].Value = Convert.ToString(int.Parse(project.Variables["a"].Value) * int.Parse(project.Variables["b"].Value));
Такой код тоже не работает. Пример проекта прилагаю. Может я что-то неверно делаю
 

Вложения

Переменные а и b уже есть в проекте. Мне надо перезаписать a переменную непосредственно в проекте.
Возможна ли такая реализация?

project.Variables["a"].Value = Convert.ToString(project.Variables["a"].Value * project.Variables["b"].Value);

У меня такой код не выполняется.
Код:
Развернуть Свернуть Копировать
float a = float.Parse(project.Variables["a"].Value.Replace(".", ","));
float b = float.Parse(project.Variables["b"].Value.Replace(".", ","));
project.Variables["a"].Value = Convert.ToString(a * b).Replace(",", "."); //закомментировать, если нужно записать значения в переменную с запятой вместо точки
//project.Variables["a"].Value = Convert.ToString(a * b); //раскомментировать, если нужно записать значения в переменную с запятой вместо точки
 
Последнее редактирование:

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