![]() |
![]() |
![]() |
|
Где в 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. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |