10進数を16進数に変える方法について
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG0079デフォルトの名無しさん
NGNG二回目 16±8
三回目 16±8±4
で比較3回か。
0080デフォルトの名無しさん
NGNGおれの勘違いかも知れんけど、そのコード変じゃない?
16進にしたときの桁数ってそれじゃ求まらんような。
シフト数が変じゃない?
0081デフォルトの名無しさん
NGNG>2はわかるとしても
>3 日本デーも三国志...三国志が日本? ハア?
>4 3つでーも四国....四国が3つ? 何が?
>5 4人でーも後藤マキ..後藤マキが4人?
全然できてないじゃん
>7 1本目と8本目の間を数え忘れてる
0082とにかく即答・失敗
NGNGfunction HexLength(a:Cardinal):Integer;
begin
a := a or 1;
a := a or (a shr 16);
a := a or (a shr 8);
a := a or (a shr 4);
a := a or (a shr 2);
a := (a or (a shr 1)) and $11111111;
a := a+(a shr 16);
a := a+(a shr 8);
a := a+(a shr 4);
Result:=( a and $f);
end;
008478
NGNGint HexLength(unsigned a)
{
a = a | 1;
a = a | (a >> 16);
a = a | (a >> 8);
a = a | (a >> 4);
a = a | (a >> 2);
a =(a | (a >> 1)) & 0x11111111;
a = a + (a >> 16);
a = a + (a >> 8);
a = a + (a >> 4);
return a & 0xf;
}
誰か検証してみて
0085とにかく即答・失敗
NGNGbegin
Randomize;
for i:=0 to 1000000 do begin
a:= Random(High(Cardinal));
n1:=HexLength(a);
n2:=Length(Format('%x',[a]) );
if n1<>n2 then begin
writeln(Format('%8X : %d %d',[a,n1,n2]));
end;
end;
end;
0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNG0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNGint i = htoi("0xFF");
俺の環境だけです、他人は知りません。
0090デフォルトの名無しさん
NGNGちょっとまった。その程度ならstrtolを使えば済む話だよね。
0091デフォルトの名無しさん
NGNG右手親指を基点として、
折った指を1としたとき、
10進数で8を表現しようとすると
指が痛い。
0092デフォルトの名無しさん
NGNGつか、8は痛くないぞ、
0093デフォルトの名無しさん
NGNGグワシage
0094デフォルトの名無しさん
NGNGちょっとまった。普通は指を立てたほうが1じゃないのか?
人前で0x04やると殺されるけど。
0095デフォルトの名無しさん
NGNG禿藁wwww
0096デフォルトの名無しさん
NGNG普通は指折り数えない
0097デフォルトの名無しさん
NGNG#include "../Library/lib.c"
char s[256];
itob(1000,s,16);
俺の環境だけです、他人は知りません。
0098棄教者 ◆witdLTi2
NGNG普通の人は指折り数えるけど二進法で数えることはしない。
したがって指の形が0x04になることもない。
0099デフォルトの名無しさん
NGNG0100デフォルトの名無しさん
NGNG左手だとやたら早く数えられる。
二進指折り31まで早数え大会を開催しませう。
0101デフォルトの名無しさん
NGNGhttp://pc.2ch.net/test/read.cgi/linux/1007137554/83
0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG"0123456789abcde"[x]じゃだめ?
0104デフォルトの名無しさん
NGNG20 IF A<=9 THEN PRINT A
30 IF A=10 THEN PRINT"A"
40 IF A=11 THEN PRINT"B"
50 …
0105デフォルトの名無しさん
NGNG約13秒。右手。
0106デフォルトの名無しさん
NGNG駄目かどうか聞く前に、まずは過去の書き込みと
自分のレスの内容を再度確認したほうが良いのでは?
0107デフォルトの名無しさん
NGNG俺、53秒かかった・・・
0108デフォルトの名無しさん
NGNG普通のINTやFLORTにキャストしろってことかな?
0109デフォルトの名無しさん
NGNGxが15だとエラーになるねそれ・・・
0110デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNG終わりにしようや。このスレ。
0112デフォルトの名無しさん
NGNGいや、それやるなら内部ではふつーのfloatなりdoubleなりでいいだろ・・・
0113デフォルトの名無しさん
NGNGそれと平均ではダメな理由も
ところで>>121が言ってるような 16bit の2ドット同時に処理する コード希望
0114デフォルトの名無しさん
NGNG激しく誤爆の予感
0115デフォルトの名無しさん
NGNGおそらく小技スレへのレス
0116デフォルトの名無しさん
NGNGはっきり、間違ったって白状しろよ
0117113
NGNG115は俺ではない。とにかくスマン
0118デフォルトの名無しさん
NGNG0119無責任だが
NGNGBCDっていうのは4bit単位に10進数で表現するコードの事?
例 数1234 を 0x1234 とする
なら もう判ると思うけど 数を10進表現して それを16進として読めばよい
0120デフォルトの名無しさん
NGNGナイスかどうかは知らんけど、これでいいか ?
char s[64];
char *dummy;
sprintf(s, "0x%d", x);
x = strtol(s, &dummy, 16);
0122デフォルトの名無しさん
NGNGこういう奴以外でって事?
void UInt2Bcd(char *b,int l,unsigned u)
{for(b+=l;l--;u/=10)*--b=(char)(u%10);}
0123118
NGNG割算とか嫌だなぁ…
答えてくれた皆さんありがとう。
■ このスレッドは過去ログ倉庫に格納されています