Имя: Пароль:
1C
 
Где в 1С квадратный корень?
Ø
0 ANik
 
06.01.06
06:51
Чего-то не нашел. А надо.
1 tp1C
 
06.01.06
07:20
Извлечение корня
Функция Корень(Основание,Степень)
     Если Степень = 1 Тогда
          Возврат(Основание);
     КонецЕсли;
     Факториал = 1; Степень_ = 1; Сум = 0;
     СтепеньЕ = 1/Степень*Лог(Основание);
     Для ии = 1 по 28 Цикл
          Факториал = Факториал * ии;
          Степень_ = Степень_ * СтепеньЕ;
          Сум = Сум + Степень_/Факториал
     КонецЦикла;
     Возврат(1+Сум);
КонецФункции
 Примерно так.. (С) не_моё
2 Мымра
 
06.01.06
07:23
(0)А в фак заглянуть? Не ожидала...
http://www.sinor.ru/~my1c/knowhow/sqrt.html
3 ANik
 
06.01.06
07:26
Большое спасибо! Извините тупого 1Сника - поиском не умею пользоваться.
Позор разработчикам платформы!
4 acsent2
 
06.01.06
07:35
А зачем нужен корень?
Неужто какие-то мат. рассчеты в 1С вести хочешь?
5 Wasya
 
06.01.06
07:43
(4) Например реализовать XYZ анализ.
6 ANik
 
06.01.06
11:03
(5) Да. Кроме того, в том же производстве могут быть какие угодно формулы.
7 Dymor
 
06.01.06
11:08
А в 8.0 есть SQRT()
8 ANik
 
06.01.06
11:25
(7) А в Фортране был. 7.7 - шаг назад по сравнению с Фортраном.
9 Гена
 
06.01.06
11:43
господа, ну какой Тейлор… сколько ждать будете, если корней много...
есть же свербыстрая рекуррентная формула:
A[n+1] = 1/2 * (A[n] + 2/A[n])
попробуйте, к примеру, на корне из двух…
10 Гена
 
06.01.06
11:59
тьфу ты… праздники :)
дал формулу для корня из двух :)
а для любого х конечно же:
A[n+1] = 1/2 * (A[n] + х/A[n])
11 DeiMos
 
06.01.06
12:08
© - Не мой:
VBS=CreateObject("MSScriptControl.ScriptControl");
VBS.Language="VBscript";
Параметр=1234;
Корень=VBS.Eval("sqr("+СокрЛП(Параметр)+")");
Процедура Сформировать()
   Ctrl=СоздатьОбъект("MSScriptControl.ScriptControl");
   Ctrl.Language="vbscript";
   Ctrl.AddCode("
   |pi=4 * atn(1.0)
   |
   |Function ShowPI
   |ShowPI=pi
   |End Function
   |
   |Function CalcSQR(number)
   |if number<0 then
   | CalcSQR=0
   |else
   | CalcSQR=SQR(Number)
   |end if
   |End Function
   |
   |Function CalcSIN(number)
   |CalcSin=Sin(number/(180/pi))
   |End Function
   |
   |Function CalcCOS(number)
   |CalcCOS=COS(number/(180/pi))
   |End Function
   |
   |Function CalcTAN(number)
   |CalcTAN=TAN(number/(180/pi))
   |End Function
   |
   |Function CalcRND
   |Randomize
   |CalcRND=RND
   |End Function
   |
   |Function NameOfWeekDay(MyDate)
   |NameOfWeekDay=WeekDayName(Weekday(MyDate),False)
   |End Function
   |
   |");
                  
   Сообщить(Ctrl.Run("ShowPI")); // Число ПИ
   Сообщить(Ctrl.Run("CalcSQR",4)); // Квадратный корень из 4
   Сообщить(Ctrl.Run("CalcSin",90)); // Синус 90 градусов
   Сообщить(Ctrl.Run("CalcCOS",180)); // Косинус 180 градусов
   Сообщить(Ctrl.Run("CalcTAN",180)); // Тангенс 90 градусов
   Сообщить(Ctrl.Run("CalcRND")); // Случайное число от 0 до 1
   Сообщить(Ctrl.Run("NameOfWeekDay",ТекущаяДата())); // Название дня недели
    
КонецПроцедуры
12 Йожыг паралимпиец
 
06.01.06
12:12
(11) Наверное, Абрама? Креатив!
13 DeiMos
 
06.01.06
12:15
КОРЕНЬ ИЗ ЧИСЛА - HELP!!!!!!!!!!!! Roma
11.10.2000 - 13:57 Как вычислить корень из числа
Невiдомий
1 - 11.10.2000 - 14:14 b := exp(x * log (a))
где а - число, х - степень (.5)
Правда, в 1С: нет exp().
А на Clipper'e вчерась сделал
UnLeaded
6 - 11.10.2000 - 14:45 http://wildhare.virtualave.net/rainbow.shtml --> ...EXP(X)...LOG(X)...SQRT(X)... and other...
Marko
10 - 12.10.2000 - 06:35 если это нужно постоянно
ScriptControl=СоздатьОбъект("ScriptControl");
ScriptControl.Language="VBScript";
ЧЧЧ=25;
Сообщить(ScriptControl.Eval("sqr("+ЧЧЧ+")"));
подключить надо Microsoft Script Control (бесплатно на www.microsoft.com или например св поставке IE 5.0 :)
Vlad74
11 - 12.10.2000 - 10:34 Используй внешнюю комп. Rainbow там есть куча мат. функций.
Хоменко Валерий
12 - 12.10.2000 - 17:45 Вчера вопрос возник, а сегодня ИТС принесли. И там целая куча функций на встроенном языке.
Функция КвадратныйКорень(Аргумент)
      // Ограничимся областью определения функции
      Если Аргумент<0 Тогда
            // сообщение об ошибке
            Сообщить("...","!");
            Возврат ПолучитьПустоеЗначение();
      // Отсечем ноль
      ИначеЕсли Аргумент=0 Тогда
            Возврат 0;
      КонецЕсли;
      // Выберем первое приближение
      ПредыдущаяИтерация = Аргумент/2;
      Для Сч=1 По КоличествоИтераций Цикл
            Значение = 0.5*(ПредыдущаяИтерация+
            Аргумент/ПредыдущаяИтерация);
            Если Значение<ПредыдущаяИтерация Тогда
                  Разница = ПредыдущаяИтерация-Значение;
            Иначе
            Разница = Значение-ПредыдущаяИтерация;
            КонецЕсли;
            Если Разница<ДостаточнаяТочность Тогда
            Прервать;
            КонецЕсли;
            ПредыдущаяИтерация=Значение;
      КонецЦикла;
      Значение = Окр(Значение,Макс(КоличествоЗнаков-Лог10(Значение),0));
      Возврат Значение;
КонецФункции // конец функции КвадратныйКорень
Sheridan
16 - 12.10.2000 - 21:40 У всех установлен микрософт оффис. Воспользуйся Excel.
2 + 2 = 3.9999999999999999999999999999999...