Re: Как закодировать?

From
Mike Makhov (2:5020/909)
To
Andrew Ezhguroff
Date
2002-10-08T10:59:46Z
Area
RU.ALGORITHMS
                          Hello  Andrew.

Пон Окт 07 2030 19:21, Andrew Ezhguroff wrote to Alexey Krasnov:

 AE>
 AE> Рекурсия:
 AE>
 AE> void printbin(int val){
 AE>   char Tmp = (val&1)+'0';
 AE>   if(val=(val>>1)&INT_MAX)printbin(val);
 AE>   putchar(Tmp);
 AE> }
 AE>
 AE> А вот в СТАНДАРТНОМ (борландовские извращения меня не интересуют)
 AE> Паскале битовых операций и сдвигов для целых нет.

Конечно нет ;-(

procedure PrintBin(Val: integer);
var
  Tmp: Char;
begin
  Tmp := Char(Val and 1) + '0';
  Val := (Val shr 1) and MaxInt;
  if LongBool(Val) then PrintBin(Val);
  Write(Tmp);
end;
                                                         Mike

P.S. На паскале можно все, что и на Си. Пpавда на Си кое-что поудобней.

--- GoldED/W32 3.00.Beta2+
 * Origin: Bllizard Station (2:5020/909)