Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Факториал [D5, D6, D7, Win2k]


stelius ©   (2004-12-23 17:32:00) 

Есть в дельфях встроенная функция, которая считает факториал?


VMcL   (2004-12-23 19:59:00) [1]

>> VMcL ©  (23.12.04 19:58) [6]

Блин, ну и написАл. Вот:

>> begin...end ©  (23.12.04 18:38) [4]

Потому что I наверняка в регистре будет (при включенной оптимизации, по крайней мере). Используя какой-нибудь там AL вместо EAX много не наэкономишь. К тому же, 32-битные процессоры быстрее работают с 32-битными регистрами, чем с 8- или 16-битными. Вот.

:-~~~~~~~~


VMcL   (2004-12-23 19:58:00) [2]

>> begin...end ©  (23.12.04 18:38) [4]

Потому что I наверняка в регистре будет (при включенной оптимизации, по краней мере). Используя какой-нибудь там AL вместо EAX много не наэкономишь. К тому 32-битные процессоры быстрее работают с 32-битными регистрами, чем с 8- или 16-битными. Вот.

:-~~~~~~~~


Ega23   (2004-12-23 18:41:00) [3]

А чего память не экономите? :-) Раз уж N: Byte, то и I: Byte. :-)

Не факт, что это экономия памяти...  :о)


begin...end   (2004-12-23 18:38:00) [4]

> [2] VMcL ©   (23.12.04 18:34)

А чего память не экономите? :-) Раз уж N: Byte, то и I: Byte. :-)


Eraser   (2004-12-23 18:36:00) [5]

Только лучше используй тип Extended, а то int64 на много не хватит ;)))


VMcL   (2004-12-23 18:34:00) [6]

function Factorial(const N: Byte): Int64;
var
 I: Integer;
begin
 Result := 1;
 for I := 2 to N do
   Result := Result * I;
end;


Eraser   (2004-12-23 17:35:00) [7]

Нету :(
Пиши сам, она не сложная
f:=!n; //    ;))))


Наверх

Титульная страница Поиск, карта сайта Написать письмо