|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Mike Makhov 2:5020/909 08 Oct 2002 10:59:46 To : Andrew Ezhguroff Subject : Re: Как закодировать? --------------------------------------------------------------------------------
Пон Окт 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> А вот в СТАHДАРТHОМ (борландовские извращения меня не интересуют)
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. Hа паскале можно все, что и на Си. Пpавда на Си кое-что поудобней.
--- GoldED/W32 3.00.Beta2+
* Origin: Bllizard Station (2:5020/909)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/134403da2bf35.html, оценка из 5, голосов 10
|