Имя: Пароль:
1C
1С v8
Сравнение элементов массива.
0 popoff17
 
10.11.11
09:36
Доброго времени суток!
Господа, есть массив в котором содержатся наименования номенклатуры. необходимо выстроить элементы по алфавиту. Для этого соответственно надо делать проверку.
Если делаю проверку так:

Если Лев(ПервыйМассив[индекс], 1) > Лев(ПервыйМассив[индекс+1], 1) Тогда

Т.Е. получаю и сравниваю первые буквы, то все нормально. Проблема в том, что в массиве могут быть элементы начинающиеся с одной буквы (Ткань, Тапки, Топик и пр.). как мне лучше сравнить элементы массива, чтобы выстроить их по алфавиту?

Пробовал так, но выпадает ошибка:
Если ПервыйМассив[индекс] > ПервыйМассив[индекс+1] Тогда
1 Не Печенкин
 
10.11.11
09:39
Если ПервыйМассив[индекс].Наименование > ПервыйМассив[индекс+1].Наименование Тогда

а вообще лучше в ТЗ выгрузить и отсортировать
2 Reset
 
10.11.11
09:42
Т=Новый СписокЗначений;
Т.ЗагрузитьЗначения(ПервыйМассив);
Т.СортироватьПоЗначению();
ПервыйМассив=Т.ВыгрузитьЗначения();
3 Reset
 
10.11.11
09:42
или да, в ТЗ.
4 Reset
 
10.11.11
09:45
(2) Или .СортироватьПоПредставлению()
зависит от данных

Собственную сортировку писать имхо приходится очень редко, в сильно специфических случаях
5 kosts
 
10.11.11
10:09

Для ч = 0 по ПервыйМассив.ВГраница-1 Тогда
Если ПервыйМассив[индекс].Наименование > ПервыйМассив[индекс+1].Наименование Тогда
6 kosts
 
10.11.11
10:10
(4) Человек учится наверное.
7 Reset
 
10.11.11
10:22
(6) Ну тогда (если он ну вот задался пузырьком, такая задача) в первую очередь он должен прочитать по типы данных и какие из них можно сранивать, а какие нельзя.
8 hhhh
 
10.11.11
11:25
(5) при современных кодировках необязательно операции > и < выстроят всё по алфавиту.
9 popoff17
 
10.11.11
11:28
Ребят, спасибо!
попробовал как (1) и (5) показали, получилось.