Имя: Пароль:
1C
1С v8
Возврат нескольких значений из функции
,
0 lirt82
 
04.07.12
10:08
Подскажите пожалуйсто как вернуть несколко значений ъ
Процедура Один ()
а = 1
б= 2
Сравнить (а, б) //"передали в функцию"

"И вот тут надо Сообщить  "а>б" или "а< б"

КонецПроцедуры

Функция  Сравнить (а,б)
Если а > б Тогда
возаврт а
иначе Б
КонецФункции

ну вот из за того что в данном примере функция возврощает одно значение то условие не получистя.
Зараенее спасибо)))
1 ДенисЧ
 
04.07.12
10:10
Структуру возвращай.
Или в параметры пиши.
2 AlexNew
 
04.07.12
10:10
Где тут 2 значения надо вернуть? Засунь, что еще надо вернуть в параметр функции.
3 SUA
 
04.07.12
10:10
(2)+1
4 SUA
 
04.07.12
10:11
сравнить(а,б,тексткоторыйнадовернуть)
5 Ненавижу 1С
 
гуру
04.07.12
10:12
а вдруг он про yield return, что в C#
6 Kreont
 
04.07.12
10:13
(4) так правильней:
сравнить(Знач а,Знач б,тексткоторыйнадовернуть = "")
7 Kreont
 
04.07.12
10:14
Хотя (1)+100, через структуру самый лучший вариант, можно много передать
8 Любопытная
 
04.07.12
10:14
А просто булево? Истина, если а>б и ложь, если наоборот. Или есть вариант, что они могут быть равны?
9 Ненавижу 1С
 
гуру
04.07.12
10:15
Р = Сравнить(а,б);

Если Р=а Тогда
 Сообщить("а>б");
Иначе
 Сообщить("а<=б");
КонецЕсли;
10 Kreont
 
04.07.12
10:16
Можно сообщить и в ф-е вообще то результат сравнения :)
11 0_Serg_0
 
04.07.12
10:16
(0)

вместо

"И вот тут надо Сообщить  "а>б" или "а< б"

напиши

сообщить(строка(а)+Сравнить (а, б)+строка(в));

а функция
Функция  Сравнить (а,б)
Если а > б Тогда
возаврт ">"
иначе "<"
КонецФункции
12 0_Serg_0
 
04.07.12
10:17
+ (11)
иначе "<"
13 0_Serg_0
 
04.07.12
10:18
хех не хочет знак меньше отображать)
14 Web00001
 
04.07.12
10:22
как много народу откликнулось ответить на элементарный вопрос ) только ТС нет
15 lirt82
 
04.07.12
10:28
Всем спасибо :))))неожиданно быстро)) ещё раз всем спасибо.
16 Йохохо
 
04.07.12
10:57
и никто не сравнил типы а и б, всем два и на пересдачу
17 Web00001
 
04.07.12
11:31
(16) а вопрос был не про то как сравнить два значения это так, пример, что ж ты к ситнаксису не придрался?
18 izekia
 
04.07.12
11:34
а типа равны они не могут быть?
19 izekia
 
04.07.12
11:35
(11) садись - два
20 Lama12
 
04.07.12
11:35
А можно функцией ничего не возвращать...
А передать в качестве параметров переменные по ссылке, значениям которых присваивать в функции.
21 izekia
 
04.07.12
11:36
Функция  Сравнить (а,б)
Если а > б Тогда
Возврат 1;
иначеЕсли а < б Тогда
 Возврат -1;
КонецЕсли;
 Возврат 0;
КонецФункции
22 lirt82
 
05.07.12
08:37
заметил)
Программист всегда исправляет последнюю ошибку.