Имя: Пароль:
1C
1C 7.7
v7: Минимум и максимум в списке значений
,
0 BalBess
 
12.01.17
13:39
Подскажите пожалуйста, никогда не сталкивался.. поиском тоже не нашел
У меня есть список значений чисел, нужна функция поска минимума и максимума. Есть встроенная функция Мин() и Макс(), но как ими пользоваться, не пойму ((
1 Ёпрст
 
12.01.17
13:41
(0)Сортировать + взять первый/последний элемент
2 Рэйв
 
12.01.17
13:41
будь мужиком! Напиши свою!
3 VladZ
 
12.01.17
13:45
(0) Мин() и Макс() - это не то.
Слушай (1)! Дело говорит!
4 BalBess
 
12.01.17
13:58
(1) не понятно как она сортирует, (надо пробовать), может как числа, а может как строки
(2) пришлось свою написать, на оптимальность не претендую

//_____________________________________________________________________________
Функция НайтиМинМаксЦену(Номенк, ТЗ)
    МинЦена = 0;
    МаксЦена = 0;
    
    ТЗ.ВыбратьСтроки();
    Пока ТЗ.ПолучитьСтроку() = 1 Цикл
        Если ТЗ.Номенклатура <> Номенк Тогда
            Продолжить;
        КонецЕсли;
    
            Если МинЦена = 0 Тогда
            МинЦена = ТЗ.Цена;
            КонецЕсли;
        
            Если МаксЦена = 0 Тогда
            МаксЦена = ТЗ.Цена;
            КонецЕсли;
        
        Если (ТЗ.Цена < МинЦена) Тогда
                МинЦена = ТЗ.Цена;
        КонецЕсли;
    
        Если (ТЗ.Цена > МаксЦена) Тогда
                МаксЦена = ТЗ.Цена;
        КонецЕсли;
    КонецЦикла;
    
    Возврат "" + МинЦена + " -" + МаксЦена;
    
КонецФункции //
5 Ёпрст
 
12.01.17
13:59
(4) Полный п...ц
6 BalBess
 
12.01.17
14:00
(5) что ни так ? ((
7 Cool_Profi
 
12.01.17
14:00
(4) Сортирует она по значению.
Если у тебя там числа (1, 2, 3) а не строки ("1", "2", "3")
то и отсортирует как числа
8 Ёпрст
 
12.01.17
14:00
ТаблицаЗначений<>СписокЗначений
Это раз, Если МинЦена = 0 То - это условие не нужно, это два.

Сортировка есть и в Таблице Значений, как и  в Списке, это три
9 ADirks
 
12.01.17
14:01
(8) ну ты уже придираешься, ей богу  :))
10 Cool_Profi
 
12.01.17
14:02
(8) ТЫ ещё спроси, какого цвета учебник...