Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Подключение Unit'a

18K
29 июня 2006 года
Ha Emmid
5 / / 29.06.2006
Здравствуйте, я только начал изучать Delphi (уже знаю VB), так вот, как подключить в первый юнит второй, который с функциями. Я прописал его в uses (просто добавил Unit4), но функции из него не работают...:confused:
7.8K
29 июня 2006 года
DrCoder
106 / / 27.01.2006
необходимо сделать описание функций в секции interface, тогда они будут "видимы" извне
18K
29 июня 2006 года
Ha Emmid
5 / / 29.06.2006
Спасибо большое! Буду пробовать!

Код:
interface
procedure factorial(fCHISLO: real);
var
i: integer;
res: integer;
begin
res := 1;
 
for i := 2 to Round(fCHISLO) do
begin
res := res * i;
end;
 
factorial := res;
end;

Этот код почему-то не работает, ошибка на присваивании значения к res. Когда он выполнен в виде функции тоже не работает. Не можете помочь?
247
30 июня 2006 года
wanja
1.2K / / 03.02.2003
А факториал какого числа ты пытаешься посчитать? Может оно малость великовато?
Кстати, процедура значения не возвращает, так что factorial := res; по идее компилироваться не должно.
303
30 июня 2006 года
makbeth
1.0K / / 25.11.2004
Код:
interface
[color=red]function[/color] factorial(fCHISLO: real)[color=red]: real[/color];
 
implementation
[color=red]function[/color] factorial(fCHISLO: real)[color=red]: real[/color];
var
    i: integer;
    //res: integer;  нет необходимости, любая функция содержит  
    //неявное объявление переменной result, с типом функции
begin
result := 1;
for i := 2 to Round(fCHISLO) do
begin
result := result * i;
end;
end;
18K
30 июня 2006 года
Ha Emmid
5 / / 29.06.2006
Да нет, у меня функция, это я привёл чотбы показать, что процедуры тоже не работают из второго юнита. А так у меня с этой функцией всё отлично. Кстати, сегодня один друг подсказал как сделать то, что я хочу, буду пробовать.

----------------

Всем спасибо, всё работает!!! Я только понять не могу, зачем возвращать значение real?
7.8K
30 июня 2006 года
DrCoder
106 / / 27.01.2006
[QUOTE=Ha Emmid] ... зачем возвращать значение real?...[/QUOTE]
-встречный вопрос, а зачем передавать в функцию real, если на входе один хрен должно быть целое число, факториал все-таки ?! -соответственно, что пришло, то и ушло. а вообще real поболее в разрядности чисел, вот )))
18K
30 июня 2006 года
Ha Emmid
5 / / 29.06.2006
Real передаётся потому-что это каьлкулятор и там две переменных real, для чисел, так как он считает дробные, воть.
7.8K
30 июня 2006 года
DrCoder
106 / / 27.01.2006
да вобщем-то ничто не мешает тебе переменную конвертить в целочисленный тип
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог