Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Разное - Wolfram Mathematica - Добавление новых элементов на сетку

Ответить
Настройки темы
Разное - Wolfram Mathematica - Добавление новых элементов на сетку

Новый участник


Сообщения: 1
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте!

На первом этапе стоит довольно простая задача - сгенерировать рандомные точки на сетке с известными координатами.
Условно взял сетку 10х10 и раскидываю по ней 20 точек (отмечаются жирным).
Есть также условие, что в одной координате не может быть двух точек, в связи с чем воспользовался функцией DeleteDuplicates для удаления повторяющихся координат в списке.

Проблема заключается в том, что при добавлении в новый (урезанный) список, элементы не отображаются в списке и на сетке, соответственно, тоже. Не отрабатывает как функция Append, так и функция Insert (оба метода закомментил).

В коде ниже пытаюсь запихнуть хотя бы один известный элемент в конец списка. Хотя нужно, в зависимости от количества дубликатов, чтобы элементов всегда было 20. Помогите, пожалуйста.

Код: Выделить весь код
For[z = 0, z < 20, 
  z++, {v = RandomInteger[{1, 9}]; w = RandomInteger[{1, 9}]; 
   If[z == 0, {v0 = v; w0 = w}]; If[z == 1, {v1 = v; w1 = w}]; 
   If[z == 2, {v2 = v, w2 = w}]; If[z == 3, {v3 = v, w3 = w}];
   If[z == 4, {v4 = v, w4 = w}];
   If[z == 5, {v5 = v, w5 = w}];
   If[z == 6, {v6 = v, w6 = w}];
   If[z == 7, {v7 = v, w7 = w}];
   If[z == 8, {v8 = v, w8 = w}];
   If[z == 9, {v9 = v, w9 = w}];
   If[z == 10, {v10 = v, w10 = w}];
   If[z == 11, {v11 = v, w11 = w}];
   If[z == 12, {v12 = v, w12 = w}];
   If[z == 13, {v13 = v, w13 = w}];
   If[z == 14, {v14 = v, w14 = w}];
   If[z == 15, {v15 = v, w15 = w}];
   If[z == 16, {v16 = v, w16 = w}];
   If[z == 17, {v17 = v, w17 = w}];
   If[z == 18, {v18 = v, w18 = w}];
   If[z == 19, {v19 = v, w19 = w}];}];
list = {{v0, w0}, {v1, w1}, {v2, w2}, {v3, w3}, {v4, w4}, {v5, 
    w5}, {v6, w6}, {v7, w7}, {v8, w8}, {v9, w9}, {v10, w10}, {v11, 
    w11}, {v12, w12}, {v13, w13}, {v14, w14}, {v15, w15}, {v16, 
    w16}, {v17, w17}, {v18, w18}, {v19, w19}};
Print[list];
newList = DeleteDuplicates[list];
(*Insert[newList, {1, 1}, -1]*)
(*Append[newList, {{1, 1}}];*)
Print[newList];
Show[ Graphics[Table[Point[{x, y}], {x, 1, 10}, {y, 1, 10}]],  
 Graphics[{PointSize[0.02], Point[{newList[[1]]}], 
   Point[{newList[[2]]}], Point[{newList[[3]]}], 
   Point[{newList[[4]]}], Point[{newList[[5]]}], 
   Point[{newList[[6]]}], Point[{newList[[7]]}], 
   Point[{newList[[8]]}], Point[{newList[[9]]}], 
   Point[{newList[[10]]}], Point[{newList[[11]]}], 
   Point[{newList[[12]]}], Point[{newList[[13]]}], 
   Point[{newList[[14]]}], Point[{newList[[15]]}], 
   Point[{newList[[16]]}], Point[{newList[[17]]}], 
   Point[{newList[[18]]}], Point[{newList[[19]]}], 
   Point[{newList[[20]]}]}]]

Отправлено: 14:20, 28-01-2020

 


Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Разное - Wolfram Mathematica - Добавление новых элементов на сетку

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - [Wolfram Mathematica] Программирование в системе. TaDa Программирование и базы данных 20 10-12-2013 07:47
[Wolfram Mathematica] Повышение производительности компьютера TaDa Хочу все знать 3 13-11-2013 09:15
Разное - [Wolfram Mathematica] - Решение системы интегральных уравнений TaDa Программирование и базы данных 13 17-04-2013 09:47
Интерфейс - Добавление элементов (Toolbar) на Панель задач Yankee Microsoft Windows 7 12 06-06-2012 20:22
C/C++ - добавление элементов на границу окна xNiSSaNx Программирование и базы данных 1 06-06-2012 01:41




 
Переход