PDA

Просмотр полной версии : мелкий паскалевский вопрос


rubik-nerubik
25.12.2007, 23:04
вот допустим в задаче описывал процедуру:

......
procedure um(a,b:string;var c:string);
var n,k,i,j,x,p:integer;
d:string;
begin
n:=length(s);
.....


и где-нибудь внизу видим это:
um(s,chstr(k),s);

что это значит?

и что значит:


function chstr(a: Integer): string;
var s: string;
begin
Str(a, s); - это что?
chstr:= s;

LolFEm
25.12.2007, 23:15
и где-нибудь внизу видим это:
um(s,chstr(k),s);

вызов процедуры с 3 параметрами


Str(a, s); - это что?

Procedure Str(X [: Width [: Decimals]]; var S);

Преобразовывает число X в строковое представление согласно Width и параметрам форматирования Decimals.

X - выражение вещественного или целого типа. Width и Decimals - выражения целого типа. S - переменная типа String или символьный массив с нулевым окончанием, если допускается расширенный синтаксис.

Chuck
25.12.2007, 23:18
и где-нибудь внизу видим это:
um(s,chstr(k),s); что это значит?


Если функция вызывает сама себя, тогда это рекурсия.


Str(a, s); - это что?

Это функция преобразует число a в строку s.

rubik-nerubik
25.12.2007, 23:30
ок спасибо, плюсы поставлены


кстати что такое plowad?

kair
26.12.2007, 00:26
может быть площадь (строка)

KEZ
26.12.2007, 00:46
А БАЛАБАЛАЛАЛА
БЛАААА АААААА
БДУК!

emik
26.12.2007, 00:57
Чувак без обид но тебе просто необходимо (если ты конечно етого еще не сделал скачать файл справки на руском языке ) например тут (http://emik.ho.com.ua/TURBO.rar) .

А по поводу "plowad" зайди сюда: http://forums.sumy.ua/archive/index.php/t-3764.html . (кажись то что тебе нада.......)

KEZ
26.12.2007, 01:21
МНЕЕЕЕЕ??????

~Lexx~
26.12.2007, 01:24
вот допустим в задаче описывал процедуру:

и где-нибудь внизу видим это:
um(s,chstr(k),s);
что это значит?


Это значит что человек написавший эту процедуру был подшофе))) Два раза передавать одну переменную)))
А если серьезно - это просто вызов этой процедуры.
когда первый раз ты ее описываешь - ты объявляешь, какие параметры она будет использовать, второй раз - ты просто вызываешь процедуру, передавая туда свои глобальные переменные.

Кстати ооочень плохой стиль программирования передавать в функцию результат другой функции перед этим не вычислив его. (ну конечно если это не рекурсия)

KEZ
26.12.2007, 01:34
Кстати ооочень плохой стиль программирования передавать в функцию результат другой функции перед этим не вычислив его. (ну конечно если это не рекурсия)


Можно поподробнее? А то я походу плохой совсем ...
Что значит "передавать, не вычислив" ?

krypt3r
26.12.2007, 16:26
Может, имелось в виду это:
...
var
t:string;
...
t:=chstr(k);
um(s,t,s);
...
?

~Lexx~
26.12.2007, 16:30
Ну если сhstr это пользоваьельская функция, то да) Покрайней мере когда пришлось сдавать сертификацию по джаве так было написано в голден кее.()сори непомню автора. Конечно если код маленький ,то это финя, но при больших проектах - действительно сложновато, особненно если работаешь над модулем не один.

KEZ
26.12.2007, 17:47
Как уже говорилось, у каждого хорошого стиля есть объяснение, почему он хороший, а другой - не хороший. Никакого объяснения естественно тут быть не может, потому что заявления, что надо делать "a=func(); func2(a)" вместо "func2(func);" - ошибочны. Во всяком случае, не в Java. В конкретных случаях - да. А так это глупость ...

krypt3r
27.12.2007, 08:13
Kez, имхо, нет хорошего и плохого стиля программинга, если быть более точным, у каждого программиста свои понятия "хорошего" и "плохого". У каждого программера свой стиль оформления кода и каждый программер считает свой стиль оформления лучшим, хотя для другому человеку код первого покажется плохо читабельным. Сори за оффтоп

Forcer
27.12.2007, 11:18
krypt3r
бред написал. На то он и хороший стиль что без проблем читается всеми. Есть общепризнанные нормы, которых желательно придерживаться и которых, впринципе, люди придерживаются. Глянь у Дейтелов в книжках вообще на каждой странице врезки "Хороший стиль программирования". К тому же сорцы в книжках разных авторов по большей части написаны в едином стиле, не замечал?
P.S. Стиль это не только где ставить открывающую скобку.