Страница 1 из 1

Сохранить начальное значение в память

Добавлено: 15 сен 2018, 15:06
Иван2019
Добрый день! Есть поток значений который отображается на индикаторе. Как сделать так, что бы при нажатии кнопки(это и будет начальный момент времени) значение сохранилось, и далее это значение делить на все последующие идущие от индикатора ну и выводить результат на другой индикатор?

Re: Сохранить начальное значение в память

Добавлено: 15 сен 2018, 15:45
Kosist
Сдвиговый регистр - наше все, http://labviewportal.org/viewtopic.php? ... %80#p77871

Re: Сохранить начальное значение в память

Добавлено: 15 сен 2018, 17:21
Иван2019
Да, скорее всего и регистры нужно использовать. Но в обсуждаемой теме сравнивают предыдущее значение, а мне нужно сравнение именно с начальным. т. е каким то образом что бы он запомнил число в начале цикла и постоянно это число делил на текущие с индикатора. Ну вот через кейс скорее всего (рис) только как там организовать память этого числа???

Re: Сохранить начальное значение в память

Добавлено: 15 сен 2018, 18:04
Kosist
Ну так запишите его только на первой итерации в сдвиговый регистр, и все.
Example.png

Re: Сохранить начальное значение в память

Добавлено: 15 сен 2018, 18:30
Иван2019
Kosist,
В вашем примере нужный результат получается только при i=0 там получается, что в начале цикла(i=0) сгенерированное число к примеру 20 и делится на 20. а дальше все не то. когда на select поступает ложь он делит уже константу на новое сгенерированное число, что не нужно. нужно так 15/20, 55/20, 98/20, 44/20... и т. д. ну логика такая новое сгенерированное число, на то число которое генератор выдал в начале цикла.

Re: Сохранить начальное значение в память

Добавлено: 15 сен 2018, 18:51
Stkn
Попробуйте с local variable

Re: Сохранить начальное значение в память

Добавлено: 15 сен 2018, 19:08
Kosist
Иван2019 писал(а):Kosist,
В вашем примере нужный результат получается только при i=0 там получается, что в начале цикла(i=0) сгенерированное число к примеру 20 и делится на 20. а дальше все не то. когда на select поступает ложь он делит уже константу на новое сгенерированное число, что не нужно. нужно так 15/20, 55/20, 98/20, 44/20... и т. д. ну логика такая новое сгенерированное число, на то число которое генератор выдал в начале цикла.
Вы серьезно? :crazy: Смотрите - в моем случае происходит так:
20/20
20/15
20/55
А Вам нужно:
20/20
15/20
55/20
Что же делать? :think: Тяжелый вопрос... О, есть идея - поменять местами входа функции деления! :brows:
Если на первой итерации не нужно делить, то используйте Case Structure - в которой на первой итерации записываете число в сдвиговый регистр, а на остальных - читаете из него, и делите.
Нужно ведь и самому немного постараться, изучить код, немного переделать под свои нужды. Тогда будет польза, тогда подобное задание Вы решите самостоятельно.
P.S. А вообще, Вы сами себе противоречите.
Вначале писали, что
Иван2019 писал(а):значение сохранилось, и далее это значение делить на все последующие идущие от индикатора
Далее, то же самое по смыслу:
Иван2019 писал(а):что бы он запомнил число в начале цикла и постоянно это число делил на текущие с индикатора.
Делить на текущие с индикатора - это как раз тот вариант, что я запостил перед этим.
А потом Вы написали, что
Иван2019 писал(а):ну логика такая новое сгенерированное число, на то число которое генератор выдал в начале цикла.
Определитесь :nono:

Re: Сохранить начальное значение в память

Добавлено: 15 сен 2018, 19:12
Иван2019
Благодарю всех за оказанное внимание к моей проблеме! Задача решена!!!