Вниз
Скачать: CL | DM;

Как вычислить факториал (5!) на языке SQL(FB1.5)???   Найти похожие ветки 

 
VadimKV   (2004-09-08 10:39) [0]

Как вычислить факториал (5!) на находу (Select) c помощью SQL(FB1.5)???


 
Ega23 ©   (2004-09-08 10:45) [1]

Гы, с помощью двух goto  :о)


 
Rem   (2004-09-08 10:46) [2]

2*3*4*5


 
Ega23 ©   (2004-09-08 10:47) [3]

А вообще - while


 
VadimKV   (2004-09-08 10:51) [4]

Ega23 предлагаешь спомощью Хранимой процедуры, если нет то поподробней пожалуйста.


 
Digitman ©   (2004-09-08 10:54) [5]


> VadimKV   (08.09.04 10:51) [4]


а чем тебя смущает хранимая процедура ?
для небольших N это вполне эффективно
для больших N лучше реализовать UDF, в которой факториал будет вычисляться, и получать вычисленное значение простейшим запросом

select Factorial(5) from RDB$DATABASE


 
Ega23 ©   (2004-09-08 10:54) [6]

Я не знаком с диалектом Interbase. Для MS SQL - пожалуйста:

Declare @X int, @Cnt int

Set NoCount On

Set @X=1
Set @Cnt=1

While (@Cnt<=5)
begin
 Select @X=@X*@Cnt
 Select @Cnt=@Cnt+1
end

Set NoCount OFF

Select Result=@X


Можно и классическим способом, через рекурсию. Но это уже действительно ХП должна быть.


 
VadimKV   (2004-09-08 11:03) [7]

Digitman, а готывая UDF функция есть или ты предлагаешь мне её саму написать. Если есть поделитесь. UDF Я сам не разу не писал.


 
Digitman ©   (2004-09-08 12:43) [8]


> готывая UDF функция есть


скорей всего есть , я не в курсе

посмотри на ibase.ru


 
DSKalugin ©   (2004-09-08 13:52) [9]

Есть готовая UDF в udflib на www.mers.com но только для Linux

DECLARE EXTERNAL FUNCTION FACT
   DOUBLE PRECISION
RETURNS DOUBLE PRECISION
ENTRY_POINT "fn_fact" MODULE_NAME "udflib"

http://www.mers.com/Udf00035.htm


 
Fay ©   (2004-09-08 14:28) [10]

Вычисление факториала через рекурсию - это не классика. Это извращение.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.021 c
3-1094385566
Koala
2004-09-05 15:59
2004.10.03
Помогите с ХП


14-1095331566
New
2004-09-16 14:46
2004.10.03
Excel адресация не получается.


14-1095227028
sapsi
2004-09-15 09:43
2004.10.03
ПО страховых компаний и туристических фирм


1-1095334252
Delph1
2004-09-16 15:30
2004.10.03
Как по закрытию формы освободить память из под нее?


6-1090744138
Asail
2004-07-25 12:28
2004.10.03
Опрос сети для поиска хостов...




   Наверх