Описание функции в FPC

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Описание функции в FPC

Сообщение badgunn » 06.12.2008 16:28:42

Люди!! помогите бестолковому. :oops: програмировал тока в школе в TP 7.0.
Вопрос вот в чём: как я понял написание собственных функции в Turbo Pascal и Free Pascal отличаются. Мне бы пример описания функции в программе и как её потом вызывать. Заранее пасиб
badgunn
новенький
 
Сообщения: 12
Зарегистрирован: 06.12.2008 16:16:05
Откуда: Самара

Re: Описание функции в FPC

Сообщение alexs » 06.12.2008 17:49:36

Ничем не отличается. Синтаксис полностью одинков.
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Описание функции в FPC

Сообщение badgunn » 06.12.2008 18:58:03

Ну например вот этот код правильный?
Код: Выделить всё
function h_i(n,a : array [1..5] of single):single;
var
  l: Byte;
  hp,s1,s2: single;

begin
  s1:=0; s2:=0;
  for l:=n downto 1 do
   begin
    s1:=s1+a[l];
    s2:=s2+a[l-1];
   end;
  hp:=power(s1,1/3)-power(s2,1/3);
  h_i:=hp;
end;
badgunn
новенький
 
Сообщения: 12
Зарегистрирован: 06.12.2008 16:16:05
Откуда: Самара

Re: Описание функции в FPC

Сообщение Vadim » 06.12.2008 19:02:00

badgunn
А ты попробуй... :)
"Практика - единственный критерий истины."(R) Кто-то из классиков марксизма-ленинизма... :)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Описание функции в FPC

Сообщение badgunn » 06.12.2008 19:08:35

Да я пробовал!! Без функции всё норм, прописываю, проверяю--> Compile failed :evil:
badgunn
новенький
 
Сообщения: 12
Зарегистрирован: 06.12.2008 16:16:05
Откуда: Самара

Re: Описание функции в FPC

Сообщение Vadim » 06.12.2008 19:12:34

badgunn писал(а):Compile failed

На этой же строчке должно быть и описание причины. Что там написано?
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Описание функции в FPC

Сообщение Михаил Крамер » 06.12.2008 19:26:43

Эмм... А массивы нельзя в заголовке функции писать как array [1..3] of single;

Нужно так сделать:

Код: Выделить всё
type singlearray = array [1..5] of single;
.....// Какие-то ещё объявления
function h_i(n,a : singlearray):single;


Енто раз. А два - если n - это тоже массив, то как енто вы пишите
Код: Выделить всё
for l:=n downto 1 do


Так что с компилером всё в порядке... Кстати, TP7 так же вёл бы себя...
Михаил Крамер
новенький
 
Сообщения: 73
Зарегистрирован: 08.02.2008 14:26:40

Re: Описание функции в FPC

Сообщение Vadim » 06.12.2008 19:31:19

Михаил Крамер
Торопитесь, дружище. :) Лучше научить человека дружить с компилятором,который выдаёт все какие нужно подсказки. А теперь Вы отбили у него всякую охоту к самостоятельному мышлению.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Описание функции в FPC

Сообщение badgunn » 06.12.2008 19:34:52

вот сообщение компилятора[img]http://imageshost.ru/links/3f62bb9ecb642ed8438b88575c2a0777
[/img]

Добавлено спустя 33 секунды:
ссори Изображение

Добавлено спустя 10 минут 22 секунды:
Vadim писал(а):Михаил Крамер
А теперь Вы отбили у него всякую охоту к самостоятельному мышлению.

Не дождётесь, тёзка! :D
badgunn
новенький
 
Сообщения: 12
Зарегистрирован: 06.12.2008 16:16:05
Откуда: Самара

Re: Описание функции в FPC

Сообщение Vadim » 06.12.2008 19:49:48

badgunn
А теперь гасим окно сообщения об ошибке и смотрим внизу на зелёное окошко, где появилась надпись:
Название_программы.pas (Номер_строки, Номер_колонки) Fatal: Syntax error, и так далее

Компилятор тебе сообщает в какой строке и колонке произошла ошибка и в чём она заключается.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Описание функции в FPC

Сообщение badgunn » 06.12.2008 20:13:52

Блин, я конечно сильно извиняюсь, но ничего не появляется. Знаю, что компилятор выдаёт сообщение о типе ошибки и её положении(в TP 7 так и было). Но в FPC я ничего подобного не увидел.
З.Ы. Vadim, вашему совету последовал, но так ничего и не увидел...Может быть в настройках че-то не так?
badgunn
новенький
 
Сообщения: 12
Зарегистрирован: 06.12.2008 16:16:05
Откуда: Самара

Re: Описание функции в FPC

Сообщение Михаил Крамер » 06.12.2008 21:06:00

badgunn, у меня тоже всё, что надо выдаётся. Так что компилер не молчит! Окно "Compiler Messages " зовётся..
Михаил Крамер
новенький
 
Сообщения: 73
Зарегистрирован: 08.02.2008 14:26:40

Re: Описание функции в FPC

Сообщение Vadim » 07.12.2008 06:55:23

badgunn
Возможны два варианта:
1. Или окно с кодом программы закрывает окно сообщений компилятора.
2. Или окно сообщений вообще не включено.
Как исправить:
1. Взяться мышкой за правый нижний угол окна текста программы и потянуть его строк на пять вверх. Если под ним не обнаружилось зелёное окошко под названием "Compiler messages", то
2. Нажать на клавишу F12 или в меню выбрать "Compile -> Compiler messages".
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Описание функции в FPC

Сообщение badgunn » 07.12.2008 11:07:29

Нашёл... Всем спасибо :oops:
badgunn
новенький
 
Сообщения: 12
Зарегистрирован: 06.12.2008 16:16:05
Откуда: Самара

Re: Описание функции в FPC

Сообщение badgunn » 10.12.2008 16:22:55

Эт снова я. Обнаружив окно сообщений компилятора я ужаснулся своей глупости и ушёл в творческий отпуск. Но вернувшись к работе обнаружил, что в этом окне по прежнему ничего нет(ни тебе ошибки ни её координат) хотя Compile failed!! Мож всё таки чё не так с компилятором (для справки FPC 2.2.0)?
badgunn
новенький
 
Сообщения: 12
Зарегистрирован: 06.12.2008 16:16:05
Откуда: Самара

След.

Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Рейтинг@Mail.ru