Article View: fj.lang.c
Article #356Re: $B#2E@4V$N5wN%$r5a$a$k(B
From: Seiji Suzuki
Date: Mon, 20 Apr 1998 00:00
Date: Mon, 20 Apr 1998 00:00
46 lines
2112 bytes
2112 bytes
In article <6hdaib$chb$1@news1.kcom.ne.jp>
sugihara@mb.kcom.ne.jp writes:
>> $B#l#o#n#g7?$G$"$i$o$5$l$?:BI8!J#x!"#y!K$G!"#2E@4V$N5wN%$rIbF0>.?tE@$r;H$o$:(B
>> $B$K5a$a$kJ}K!$O$J$$$G$7$g$&$+!)(B
$B%K%e!<%H%s$[$*$%$C$H=q$3$&$H$7$?$s$G$9$,!"$"$l$OHyJ,$GJ?J}:,$,$$$j$^(B
$B$7$?$M!#$=$l$J$i!"AGD>$K3+J?J}$7$F$O$$$+$,$G$7$g$&!#(B10 $B?J?t$N3+J?J}$H(B
$B0c$C$F!"(B2 $B?J$N3+J?J}$O$H$C$F$b4JC1$G$9!#$A$g$C$HAH$s$G$_$^$7$?$N$G!"(B
$B%G%P%C%0$H:GE,2=$O$=$A$i$G$d$C$F2<$5$$!#(B
#include <stdio.h>
#include <stdlib.h>
#define BIT_PER_BYTE 8 /* 1 byte $B$"$?$j$N%S%C%H?t(B */
#define OP_SHIFT 2 /* 2 $B%S%C%H$:$D2r7h$9$k$+$i(B */
#define BITMASK 3 /* 2 $B%S%C%H$N%^%9%/(B */
int sqrint( int operation ){
int answer = 0; /* $BEz$((B */
int left = 0; /* $B:8$N%T%i%_%C%I$N>e$N?t(B */
int right = 0; /* $B1&$N%T%i%_%C%I$N0z$-;;$7$??t(B */
int i;
for( i = sizeof(operation)*BIT_PER_BYTE; i > 0; i -= OP_SHIFT ){
answer <<= 1;
right <<= OP_SHIFT;
right += ((operation >> (i-OP_SHIFT)) & BITMASK); /* $B$*$m$9(B */
left <<= 1;
if( left+1 <= right ){ /* 1 $B$,N)$F$i$l$k$+$I$&$+(B */
answer += 1;
right -= left+1; /* 10 $B?J$J$i3]$1;;$r$9$k$H$3$m(B */
left += 2; /* $B:8$N%T%i%_%C%I$r99?7$9$k(B */
}
}
return answer;
}
int main( int argc, char *argv[] ){
printf( "sqrt(%d) ~= %d\n" , atoi( argv[1] ), sqrint( atoi( argv[1] )));
return 0;
}
$B$A$J$_$K!"Ii$N?t$G$b$H$K$+$/Ez$($r=P$9!"$H$$$&$N$H!"Ez$($N>.?tE@0J2<$r@Z$j(B
$B<N$F$k$H$$$&$N$O%P%0$G$O$J$/;EMM$G$9!#(B
Technical Details
Message-ID:
<6hekgm$ojc$1@tequila.rel.crl.fujixerox.co.jp>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<6hdaib$chb$1@news1.kcom.ne.jp>Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS X-Google-Thread: 106434,5e6daae5d04bdee4 X-Google-Attributes: gid106434,public From: seiji@rel.crl.fujixerox.co.jp (Seiji Suzuki) Subject: Re: $B#2E@4V$N5wN%$r5a$a$k(B Date: 1998/04/20 Message-ID: <6hekgm$ojc$1@tequila.rel.crl.fujixerox.co.jp> X-Deja-AN: 345842476 References: <6hdaib$chb$1@news1.kcom.ne.jp> Organization: Fuji Xerox Co. Ltd., Nakai, Japan Newsgroups: fj.lang.c