Помощь с составлением функции цикличного рандома

Простейшие вопросы в области инженерной разработки
Ответить
Burningmonkey
interested
interested
Сообщения: 3
Зарегистрирован: 27 апр 2018, 13:20
Версия LabVIEW: 8.6
Контактная информация:

Помощь с составлением функции цикличного рандома

Сообщение Burningmonkey »

Господа! Необходима помощь! Стоит не тривиальная задача. Сейчас постараюсь объяснить.
Есть блок из ста лампочек. Они загораются при определенных условиях и за их загорание отвечают три числа.Эти три числа должны быть рандомные,но ни в коем случае не равны друг другу.К примеру,если первое число выпадает z=65,то второе должно быть x=100-z-10, где 10-это промежуток,чтобы визаульно было видно,что эти числа отличаются. и третье число у=100-z-x. И такая функция должна иметь цикличность,то есть повторяться. Если на яве получилось написать программу
function randomInteger(min, max) {
var rand = min - 0.5 + Math.random() * (max - min + 1)
rand = Math.round(rand);
return rand;
}

function forMyStupidFriend(a, delta) {
const x = randomInteger(0, a/2);
const range = a % 2 ? { begin: Math.max(0, x + delta) } : { begin: 0, end: Math.max(0, x - delta) };
const y = randomInteger(range.begin, range.end);
const z = a - x - y;
return [x,y,z];
}
forMyStupidFriend(100, 5)
, то,к сожалению, Лабвью не воспринимает яву. МОжно ли как то выйти из этого положения.Очень надеюсь на Вашу помощь
Вложения
Блок лампочек.jpg
Artem.spb

Activity Автор
professor
professor
Сообщения: 3391
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Помощь с составлением функции цикличного рандома

Сообщение Artem.spb »

1 мысль: y==10, нет смысла её вычислять.
2 мысль: судя по названию второй функции, писали её тоже не вы.
3 мысль: приведённая картинка не имеет никакого отношения к вопросу.
4. зачем запихивать яву в :labview:? у вас написан алгоритм, "переведите" его на другой язык.
Аватара пользователя
Vitekkz88

Activity Silver Автор
expert
expert
Сообщения: 1100
Зарегистрирован: 21 янв 2014, 15:45
Награды: 3
Версия LabVIEW: 12,13,14
Откуда: Томск
Контактная информация:

Re: Помощь с составлением функции цикличного рандома

Сообщение Vitekkz88 »

function randomInteger(min, max) {
var rand = min - 0.5 + Math.random() * (max - min + 1)
rand = Math.round(rand);
return rand;
}

function forMyStupidFriend(a, delta) {
const x = randomInteger(0, a/2);
const range = a % 2 ? { begin: Math.max(0, x + delta) } : { begin: 0, end: Math.max(0, x - delta) };
const y = randomInteger(range.begin, range.end);
const z = a - x - y;
return [x,y,z];
}
forMyStupidFriend(100, 5)
Это я специально выделил, а то вдруг со счетом проблемы и вторую функцию отыскать не получится. И не забудьте переименовать её в конце программы.
Инженер - это открыто светящийся интеллект, свободный и не обидный юмор, это легкость и широта мысли...Это воспитанность, тонкость вкусов, хорошая речь, плавно согласованная и без сорных словечек...
-А. И. Солженицын
Burningmonkey
interested
interested
Сообщения: 3
Зарегистрирован: 27 апр 2018, 13:20
Версия LabVIEW: 8.6
Контактная информация:

Re: Помощь с составлением функции цикличного рандома

Сообщение Burningmonkey »

Artem.spb писал(а): 2 мысль: судя по названию второй функции, писали её тоже не вы.
4. зачем запихивать яву в :labview:? у вас написан алгоритм, "переведите" его на другой язык.
Дык я вроде и не сказал,что писал ее я)Я инженер,перед которым поставили задачу в новой среде сделать данную функцию.ТАк как я с языками программирования не знаком(Как и с лабвью собственно),то пришлось просить друга.Он подошел с юмором,ну а я не стал редактировать код,пусть останется так)
Аватара пользователя
Vitekkz88

Activity Silver Автор
expert
expert
Сообщения: 1100
Зарегистрирован: 21 янв 2014, 15:45
Награды: 3
Версия LabVIEW: 12,13,14
Откуда: Томск
Контактная информация:

Re: Помощь с составлением функции цикличного рандома

Сообщение Vitekkz88 »

Вот такую диаграмму соберите и допиливайте остальные граничные условия по своей задаче(а они определенно есть, у своего преподавателя уточните).
Вложения
Random.png
Инженер - это открыто светящийся интеллект, свободный и не обидный юмор, это легкость и широта мысли...Это воспитанность, тонкость вкусов, хорошая речь, плавно согласованная и без сорных словечек...
-А. И. Солженицын
Burningmonkey
interested
interested
Сообщения: 3
Зарегистрирован: 27 апр 2018, 13:20
Версия LabVIEW: 8.6
Контактная информация:

Re: Помощь с составлением функции цикличного рандома

Сообщение Burningmonkey »

Премного благодарен!!!
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»