Вход | Регистрация



Как создать ТаблицаЗначений с размером nxn?

Как создать ТаблицаЗначений с размером nxn?
Я
   Нач программист
 
06.10.16 - 14:29
ТЗ = Новый ТаблицаЗначений;
    
    Для Счетчик = 0 По РазмерТЗ - 1 Цикл
        
        ТЗ.Колонки.Добавить("Колонка"+Счетчик,Новый ОписаниеТипов("Строка"));
        
    КонецЦикла;
    
    Для Счетчик = 0 По РазмерТЗ - 1 Цикл
        
        НоваяСтрока = ТЗ.Добавить();
        НоваяСтрока.Счетчик = 0;
        
    КонецЦикла;
 
 
   Numerus Mikhail
 
1 - 06.10.16 - 14:30
Ну примерно так и создать
В каком кейсе нужна такая таблица? Что-то даже на ум не приходит ничего
   DrShad
 
2 - 06.10.16 - 14:31
а что не получается?
   Провинциальный 1сник
 
3 - 06.10.16 - 14:32
Не надо так делать! Лучше 2-мерность эмулировать через таблицу с реквизитами-измерениями и значением.
   Нач программист
 
4 - 06.10.16 - 14:32
{Форма.Форма.Форма(76)}: Поле объекта не обнаружено (Счетчик)
        НоваяСтрока.Счетчик = 0;
   PR
 
5 - 06.10.16 - 14:35
(4) И что? Все правильно. Какой нахрен счетчик?
   Нач программист
 
6 - 06.10.16 - 14:35
(3) Извини, не понял?
   Numerus Mikhail
 
7 - 06.10.16 - 14:35
Удали эту строку, нахрена она тебя
   PR
 
8 - 06.10.16 - 14:36
(3) Почему?
   Нач программист
 
9 - 06.10.16 - 14:36
(5) А как обращаться в колонку?
   DrShad
 
10 - 06.10.16 - 14:36
НоваяСтрока["Колонка"+Счетчик] = 0
 
 Рекламное место пустует
   Jokero
 
11 - 06.10.16 - 14:37
НоваяСтрока["Колонка"+Счетчик] = 0;
   Нач программист
 
12 - 06.10.16 - 14:37
(8) Подробнее можешь обьеснить
   megabax
 
13 - 06.10.16 - 14:37
(4) Дык у тебя колонки имеют имена Счетчик0, Счетчик1, Счетчик2, и тд, а ты пишешь НоваяСтрока.Счетчик = 0;
естественно ошибка
   Провинциальный 1сник
 
14 - 06.10.16 - 14:37
(6) Тебе надо хранить какое-то значение для пары измерений. Так? Скорее всего твоя матрица будет содержать дофига пустых ячеек. Так зачем на них память тратить?
Создаешь таблицу значений с тремя колонками. Две колонки - измерения, третья - значение. При необходимости получить значение по измерениям используешь отбор и получаешь.
   PR
 
15 - 06.10.16 - 14:38
И вместо счетчик нужно формат счетчика использовать.
Тут-то маловероятно, что колонок будет больше 1000, а в других местах легко.
И будет в итоге не Колонка1000, а Колонка1 000 и синтаксическая ошибка.
   PR
 
16 - 06.10.16 - 14:39
(12) Это разрешение мне что-то "обьеснить" тебе?
После вопроса тебе, почему ты так считаешь?
Реально народ тупеет, скоро до мышей опустится.
   DrShad
 
17 - 06.10.16 - 14:41
(16)+1
ну не могу не согласиться
   lxs
 
18 - 06.10.16 - 14:41
Почему никто еще не задал вопрос "ЗАЧЕМ" автору то, что он пытается сделать?
   DrShad
 
19 - 06.10.16 - 14:41
(18) всем пофиг
   Numerus Mikhail
 
20 - 06.10.16 - 14:41
(18) (1) ващет сразу спросил, но в ответ тишина
   PR
 
21 - 06.10.16 - 14:41
(14) Ну конечно.
У него может пять колонок и 10 строк.
Но благодаря тебе он получил кучу епли с каким-то непонятным алгоритмом поиска значения в ТЗ, вместо простого наглядного обращения ТЗ[Строка][Колонка].
   lxs
 
22 - 06.10.16 - 14:41
(16) +1
   PR
 
23 - 06.10.16 - 14:42
(18) Потому что это и так понятно, нормальная часто встречаемая ситуация.
   lxs
 
24 - 06.10.16 - 14:43
(21) Сдается мне, что автор мыслить примитивными понятиями из курса информатики программы 10ого класса конца 90х гг.
   Нач программист
 
25 - 06.10.16 - 14:43
Изменил код

Для Счетчик = 0 По РазмерТЗ - 1 Цикл
        
        ТЗ.Колонки.Добавить("Колонка"+Счетчик,Новый ОписаниеТипов("Строка"));
        
    КонецЦикла;
    
    Для Счетчик = 0 По РазмерТЗ  - 1 Цикл
        
        НоваяСтрока = ТЗ.Добавить();
        НоваяСтрока["Колонка"+Счетчик] = 0;
        
    КонецЦикла;

Размер 3х3
Результат такой 
0 _ _
_ 0 _
_ _ 0
   Нач программист
 
26 - 06.10.16 - 14:43
В чем ошибка?
   lxs
 
27 - 06.10.16 - 14:43
(23) И где ты часто создаешь заранее ТЗ с определенным количеством строк?
   Нач программист
 
28 - 06.10.16 - 14:44
Мне нужен такой?

0 0 0
0 0 0
0 0 0
   Это_mike
 
29 - 06.10.16 - 14:44
"пусть на нас летят N самолетов... нет, N мало, давайте M !!!"©
   lxs
 
30 - 06.10.16 - 14:45
(28) Цикл обхода колонок внутри цикла добавления строк, чувак. Это даже не 10ый класс информатики, ты чо вообще?
   DrShad
 
31 - 06.10.16 - 14:46
(26) ошибки нет - все согласно кода
   Нач программист
 
32 - 06.10.16 - 14:47
(16) Задача

Заполнить двумерный массив размером nхn нулями.
   PR
 
33 - 06.10.16 - 14:51
(32) У вас там каникулы в школе что ли?
 
 
   PR
 
34 - 06.10.16 - 14:53
Для Счетчик = 0 По РазмерТЗ - 1 Цикл
    ТЗ.Колонки.Добавить("Колонка"+Счетчик,Новый ОписаниеТипов("Строка"));
КонецЦикла;

Для Счетчик = 0 По РазмерТЗ  - 1 Цикл
    НоваяСтрока = ТЗ.Добавить();
    НоваяСтрока["Колонка"+Счетчик] = 0;
КонецЦикла;

Для Счетчик1 = 0 По РазмерТЗ - 1 Цикл
    Для Счетчик2 = 0 По РазмерТЗ  - 1 Цикл
        ТЗ[Счетчик1][Счетчик2] = 0;
    КонецЦикла;
КонецЦикла;
   Mauser
 
35 - 06.10.16 - 14:53
(32) массив от таблицы значений отличаем, не?
   lxs
 
36 - 06.10.16 - 14:56
(34) ужснах
   lxs
 
37 - 06.10.16 - 14:57
(36)+ если ты добавишь колонки с описанием типов Число, то последнее извращение в виде вложенных циклов утратит смысл вообще
   lxs
 
38 - 06.10.16 - 14:57
а (36)++ и станет ненужной строка 
оваяСтрока["Колонка"+Счетчик] = 0;
   Jokero
 
39 - 06.10.16 - 14:58
(26) Заполняй запросом, будь мужиком))
   lxs
 
40 - 06.10.16 - 15:03
ОписаниеКолонок = "";
Для Счетчик = 0 По РазмерТЗ - 1 Цикл
    ТЗ.Колонки.Добавить("Колонка"+Счетчик);
    ОписаниеКолонок = ОписаниеКолонок + "Колонка"+Счетчик+",";
КонецЦикла;

ТЗ.ЗаполнитьЗначения(0, Лев(ОписаниеКолонок, СтрДлина(ОписаниеКолонок)-1));


Кто следующий?))))
   f_vadim
 
41 - 06.10.16 - 15:04
(32)
>>Как создать ТаблицаЗначений с размером nxn?
>>Заполнить двумерный массив размером nхn нулями.

бгагага, извините
   Базис
 
42 - 06.10.16 - 15:05
Салам, брат.

Секрет успешных казахских предприятий прост - начальником может быть и казах, но вот главным инженером всегда лучше назначить русского.
   Базис
 
43 - 06.10.16 - 15:06
Я это к чему пишу - ты же нач программист, обратись к программисту.
   lxs
 
44 - 06.10.16 - 15:18
(43) смеяться после слова лопата?


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует