Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
 Аватар для Heleg
209 / 209 / 6
Регистрация: 23.10.2011
Сообщений: 971

Как присвоить несколько значений рандомным объектам из списка?

04.09.2012, 15:28. Показов 2432. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
сабж. есть список из дофига элементов. нужно присвоить трем из них по некоторому свойству

Добавлено через 1 час 18 минут
сюда же могу предложить задачу по написанию функции, которая возвращает заданное количество случайных чисел в рамках заданного диапазона, которые не совпадают.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.09.2012, 15:28
Ответы с готовыми решениями:

Присвоить несколько значений одному option из select
Всем здрасти, в js не очень то я, поэтому нужна помощь. Есть два combobox: combobox1 и combobox2. В combobox1 есть множество option с...

Как присвоить переменной несколько значений?
Подскажите как в c#присвоить переменной несколько значений. Например a = 1, 2, 3. И как все это использовать с оператором if. Например if...

Как присвоить переменной несколько значений и занести их в БД?
Добрый день, Форумчане Необходима ваша помощь или совет, есть некоторая форма, где пользователь выбирает checkом несколько параметров...

15
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
05.09.2012, 09:27
Цитата Сообщение от Heleg Посмотреть сообщение
есть список из дофига элементов. нужно присвоить трем из них по некоторому свойству
Не конкретно!

Цитата Сообщение от Heleg Посмотреть сообщение
сюда же могу предложить задачу по написанию функции, которая возвращает заданное количество случайных чисел в рамках заданного диапазона, которые не совпадают.
Вроде понятно, но не раньше завтра, а там....

Добавлено через 12 часов 14 минут
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//сколько штук возвращать, меньшее, большее, оба числа входят в диапазон
rand1(11, 3, 21);
 
function rand1(n, s, b){
var m=[], x;
if(b-s+1<n){alert('Диапазон меньше количества,\n     щас повиснем!'); return;};
while(m.length!=n){
x=Math.floor(Math.random()*(b-s+1))+s;
if(huntEl(m, x)<0){m.push(x);}};
alert(m.sort());
 };
 
function huntEl(m, x){
if(m.indexOf){return m.indexOf(x);}//нормальные браузеры
else{//не очень нормальные браузеры
var k=m.length;
while(k--){if(m[k]==x){break;}}};
return k;
 };
1
 Аватар для Heleg
209 / 209 / 6
Регистрация: 23.10.2011
Сообщений: 971
05.09.2012, 11:56  [ТС]
правильно ли я понял, как это работает?
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function rand1(n, s, b){
var m=[], x; //m- массив, куда сохраняем, x - временное значение, которое в итоге подрубится к массиву
if(b-s+1<n){alert('Диапазон меньше количества,\n     щас повиснем!'); return;};
while(m.length!=n){ //пока не будет достаточного количества элементов
x=Math.floor(Math.random()*(b-s+1))+s; //случайное число в заданном диапазоне
if(huntEl(m, x)<0){m.push(x);}}; //сморим, нет ли в массиве такого числа
alert(m.sort());
 };
 
function huntEl(m, x){
if(m.indexOf){return m.indexOf(x);}//н
else{//не очень нормальные браузеры
var k=m.length;
while(k--){if(m[k]==x){break;}}};
return k;
 };
только один вопрос, indexOf для массива преобразует его в строку и смотрит, есть ли там это число?

Добавлено через 41 секунду
вот как я сделал. говнокод?
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//функция проверяет, нет ли такого числа в массиве
function check(num,arr) {
    for (var i = 0; i < arr.length; i++) {
        if(arr[i] == num) {
            return false
        } 
    };
    return true;
}
 
//функция выдает случайное число, которого нет в массиве
function getRandNumber(min,max,arr) {
    var num = rand(min,max);
    if(check(num,arr)) {
        return num;
    } else {
        num = getRandNumbers(min,max,arr);
    }
    return num;
}
 
//функция возвращает количество нужных случайных чисел
function getRandNumbers(min,max,qt) {
    var num = [];
    for (var i = 0; i < qt; i++) {
        num.push(getRandNumber(min,max,num));
    };
    return num;
}
Добавлено через 1 час 22 минуты
Цитата Сообщение от Heleg Посмотреть сообщение
есть список из дофига элементов. нужно присвоить трем из них по некоторому свойству
мы имеем массив объектов
JavaScript
1
var arr = [{},{},{},{},{},{},{},{}];
есть (допустим) 3 свойства.
JavaScript
1
var prop = ['first','second','third'];
нужно взять рандомно три элемента и присвоить им по свойству, чтобы получилось примерно так:
JavaScript
1
var arr = [{prop:null},{prop:prop[0]},{prop:null},{prop:null},{prop:prop[2]},{prop:prop[1]},{prop:null},{prop:null}];
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
05.09.2012, 21:17
Цитата Сообщение от Heleg Посмотреть сообщение
правильно ли я понял, как это работает?
Коменты совершенно верны.
Цитата Сообщение от Heleg Посмотреть сообщение
//сморим, нет ли в массиве такого числа
..., и если нет, то добавляем новое
Цитата Сообщение от Heleg Посмотреть сообщение
только один вопрос, indexOf для массива преобразует его в строку и смотрит, есть ли там это число?
Вот хороший адрес по этому делу.
Цитата Сообщение от Heleg Посмотреть сообщение
говнокод?
Если кто то написал лучше, то это не значит что твой код плохой, он ровно такой, какой ты можешь написать сегодня с имеющимся багажом знаний. Завтра получится лучше. Только на яваскрипт таким идиотизмом страдают.
1
tribal dance
 Аватар для EPMAK
168 / 156 / 36
Регистрация: 03.09.2009
Сообщений: 820
Записей в блоге: 17
06.09.2012, 04:17
Цитата Сообщение от newJS Посмотреть сообщение
Сообщение от Heleg
говнокод?
Если кто то написал лучше, то это не значит что твой код плохой, он ровно такой, какой ты можешь написать сегодня с имеющимся багажом знаний. Завтра получится лучше. Только на яваскрипт таким идиотизмом страдают.
Говнокодом, довольно часто называют код, в котором не в состоянии разобраться горе кодеры.имхо
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
06.09.2012, 07:53
Цитата Сообщение от EPMAK Посмотреть сообщение
в котором не в состоянии разобраться горе кодеры.имхо
В таких случаях говорят, Себя вспомни.
Это не повод людей обижать. ИМХО.
0
tribal dance
 Аватар для EPMAK
168 / 156 / 36
Регистрация: 03.09.2009
Сообщений: 820
Записей в блоге: 17
06.09.2012, 08:15
Цитата Сообщение от newJS Посмотреть сообщение
В таких случаях говорят, Себя вспомни.
Это не повод людей обижать. ИМХО.
если код заточен под определенные цели, написан в непонятном стиле (сильно сокращен), человек, который не может его расширить - заточить под свой проект, обязательно назовет этот код - говнокодом.
такое сплошь и рядом.
а, чтобы обидеть, повод не нужен.
конфликты имеют природу возникать на пустом месте из ничего,а про претензии и говорить не стоит (трололо всегда было есть и будет).
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
06.09.2012, 09:12
Цитата Сообщение от EPMAK Посмотреть сообщение
который не может его расширить - заточить под свой проект, обязательно назовет этот код - говнокодом
Если мозгов нет, то для идиотов это самое простое решение.
0
 Аватар для Heleg
209 / 209 / 6
Регистрация: 23.10.2011
Сообщений: 971
06.09.2012, 10:37  [ТС]
newJS, спасибо большое за ссылку. касательно моей функции, я бы не сказал, что в ней тяжело рабобраться. наоборот, она более прямолинейна. говнокод заключается в том, какой код медленно выполняется, имхо. ну или просто глупый. у меня в функции рекурсия на рекурсии. так не гоже делать?
0
tribal dance
 Аватар для EPMAK
168 / 156 / 36
Регистрация: 03.09.2009
Сообщений: 820
Записей в блоге: 17
06.09.2012, 11:00
Цитата Сообщение от newJS Посмотреть сообщение
Если мозгов нет, то для идиотов это самое простое решение.
Мало вероятно, что идиот полезет копаться в скрипт.
К тому же, надо учитывать, что прогеры специализация которых к примеру базы данных или сервер или др языки, могут ничего не понимать или спотыкаться на подводных камнях яваскрипта, при этом быть отличными кодерами в "своей среде".
Такой пациент, вполне может придти на форум и просить помощи у "знатаков", непобрезгав выложить чужой, непонятный ему код, при этом назвав этот код - быдло-говно кодом.
0
 Аватар для Heleg
209 / 209 / 6
Регистрация: 23.10.2011
Сообщений: 971
06.09.2012, 11:13  [ТС]
EPMAK, ни разу, кстати, таких не встречал. в основном выкладывают свой говнокод
0
tribal dance
 Аватар для EPMAK
168 / 156 / 36
Регистрация: 03.09.2009
Сообщений: 820
Записей в блоге: 17
06.09.2012, 11:20
Цитата Сообщение от Heleg Посмотреть сообщение
EPMAK, ни разу, кстати, таких не встречал. в основном выкладывают свой говнокод
Я! встречал, и не раз.

можно узнать, как вы определили что выкладываемый код, написан автором темы, а не кем-то другим ?
и чем отличается ковнокод от нормального кода?
0
 Аватар для Heleg
209 / 209 / 6
Регистрация: 23.10.2011
Сообщений: 971
06.09.2012, 13:18  [ТС]
Цитата Сообщение от EPMAK Посмотреть сообщение
как вы определили что выкладываемый код, написан автором темы,
ну обычно авторы не гнушаются об этом говорить
0
tribal dance
 Аватар для EPMAK
168 / 156 / 36
Регистрация: 03.09.2009
Сообщений: 820
Записей в блоге: 17
06.09.2012, 13:35
Может проще и не много надежней задать автору наводящие вопросы по скрипту..
если ориентируется в "своей" писанине - значит script его или более-менее в скрипте разобрался, если путается - однозначно не автор
0
06.09.2012, 17:07
 Комментарий модератора 
EPMAK, newJS, Обсуждения, связанные с природой и самим фактом говнокода, лучше осуществлять в другом месте. Например, в ОбоВсеме.
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
07.09.2012, 07:31
Цитата Сообщение от Heleg Посмотреть сообщение
у меня в функции рекурсия на рекурсии. так не гоже делать?
Раз можно сделать проще, то лучше делать проще. В этом случае все циклом решилось. Рекурсия как вариант, мало ли где и как надо будет.
Вот на это обрати внимание, требование абсурдное, но кому то понадобилось.

А про свойства идея такая, два раза вызвать предыдущий скрипт с разными данными, и все.



Цитата Сообщение от EPMAK Посмотреть сообщение
непобрезгав выложить чужой, непонятный ему код, при этом назвав этот код - быдло-говно кодом.
Про это и говорю, прикрыть свои незнания хамством всегда проще.
В.А. мы уже закончили ля-ля.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.09.2012, 07:31
Помогаю со студенческими работами здесь

Список: Как вставить в список несколько элементов и присвоить адрес списка в элементу Node* ListMas[10];?
Как вставить в список несколько элементов и присвоить адрес списка в элементу Node* ListMas;? curr-&gt;data = &quot;q&quot;; ...

Присвоить несколько значений одному полю
Подскажите плиз, вот у меня есть БД, где есть сотрудники, и им присваиваеи имена, фамилии, должности, и телефоны. Так вот как сделать, что...

Хэш: присвоить ключу несколько значений
Удобная шутка хэши, но хочется, чтобы в один ключ записывать два и более значения, ну и соответственно доставать из хэша потом два же и...

Передать несколько значений из списка в текстовое поле
имеется поле типа список (предположим там строки со значениями &quot;А&quot;,&quot;Б&quot;,&quot;В&quot;) и текстовое поле. требуется сделать так, чтобы выбрав,...

Структуры. Присвоить значение переменной a и всем объектам, с ней связанным
Присвоить значение переменной a и всем объектам, с ней связанным: struct b { double ∗q; int ∗ (∗p); }; struct b...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru