トリッキーなコード その2
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG大体トリッキーなコードを書く奴に限って
致命的なバグを出したりするんだけど、
書きたいもんはしょうがない。
・・・らしい
前スレ http://pc3.2ch.net/test/read.cgi/tech/983191866
0002デフォルトの名無しさん
NGNG./"´:;;::;;;: ::::;::"ソヽ
/ ,ヘ〜-ー'´⌒``ヽ:ヽ
/ ノ 彡:三:三:三:ミ |: \
| |. __,,;;ィ t;;;;,,,_ :ヽ│
| |シ ,ィェァ') (.yェュ、 ミ| |
!r、| ''''''. | | '''''' Y )
ヽ{ ヽ. (r、 ,n) /:: };ノ
し} : 、___二__., ;:::::jJ
!、.:. ´ ..::::... `ノ::::ノ
_,〉、ゝ '""'ノ/:|
__,,ィ';;;;ト `ニニ: ::..ノ|ヽ、 _
-ー''''"";;;;;;;;;;;;ヽ \::::::::/ /;;;;;;;;;;;`''ー-、,,,,__
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ヽ >< /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"''
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ヽ /|;;;jヽ、/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
自由と正義の名の下に、このスレにアメリカが介入しました。
以下、大統領に従ってください。
>>1弱いくせに調子に乗るなよこのジャップ豚(プ
>>2
>>3スモウレスラーかと思ったら、ただのデブか(プ
>>4コリアもジャップも同類だろエテ公(プ
>>5米ばっか食ってんな(プ
>>6トマホークかますぞ(プ
>>7エロアニメが文化かよ(プ
>>8ロリコン必死だな(プ
>>9イラクの次はお前だな(プ
0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNG0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNG0007デフォルトの名無しさん
NGNG0008デフォルトの名無しさん
NGNGまさにトリッキー
0009デフォルトの名無しさん
NGNGTrue = Not False
証明して下さい
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNG0012デフォルトの名無しさん
NGNG0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNG// 標準仕様には入っていない(と思う)のですが、
// 初期ccでサポートされていたこともあり、
// たいていのコンパイラで実装されている知られざる演算子をご存じですか?
int main(void)
{
int a=10,b=7;
printf("割ってかける演算子、かけて割る演算子\n");
// 3で割ってから3でかける演算子
a/*=3;
// 5でかけてから5で割る演算子
b*/=5;
printf("a=%d b=%d\n",a,b);
return 0;
}
0015デフォルトの名無しさん
NGNGint main (void)
{
printf ("( ´_ゝ`)フーン\n");
return 0;
}
0016デフォルトの名無しさん
NGNG◆ある図形内に点が含まれるかどうかを高速に判断する
という問題はどう?
図形は、n個の点(x_1,y_1)-(x_n,y_n)で与えられるとしましょう。
n>=3で、(x_n,y_n)と(x_1,y_1)は繋がっていると考えてください。
このn個の点は、隣同士を線で結んでも、線が交わることがないものとします。
高速化のために条件を付加してもOKですが、明記してください
(例えば、凹んでいる部分は絶対に無い、n==4である、とか)
難しそう
0017デフォルトの名無しさん
NGNG(x>=x1 && x<=x2 && y>=y1 && y<=y2)
でいいのかな?
0018デフォルトの名無しさん
NGNGa=5 b=7 となるだけだが ?
(なんで、b*/=10; にしないんだろう...。)
0019デフォルトの名無しさん
NGNGコンパイラバグってるよ。アセンブラ出力して確認汁。
0020デフォルトの名無しさん
NGNGそれって古典的なネタじゃん
main() {
printf("%03d\n", 001);
printf("%03d\n", 010);
printf("%03d\n", 100);
}
これといい勝負。
0021デフォルトの名無しさん
NGNGいくつになるのが正解なの ?
0022デフォルトの名無しさん
NGNG自分でソース打ち込んで試せ。
ちゃんと自分でエディタを使って打てよ。
あとメモ帳やviみたいな色分けもできんような
エディタはミスしやすいから使うなよ。
0023デフォルトの名無しさん
NGNGviは最近は色分けできるよ
0025デフォルトの名無しさん
NGNGごめん、そうだね。
0026デフォルトの名無しさん
NGNGCなら
// 3で割ってから3でかける演算子
でエラーが出るのが妥当 (でも無いかも知れない)
C++なら
a=5, b=7 ;
で>>18で正しい
0027デフォルトの名無しさん
NGNG今の時代、Cコンパイラにだって
C++のコメントを許容するオプションくらいあるでしょ
0028デフォルトの名無しさん
NGNGなんだから
a=9
じゃないの??
0029デフォルトの名無しさん
NGNG正しいC環境がインストールされていませんね。
0030デフォルトの名無しさん
NGNGだから自前で書いて試せって。
色付け可能なエディタでな。
0031デフォルトの名無しさん
NGNG/* だからネタなんだって */
0032デフォルトの名無しさん
NGNGb*/=5;
は
a
/*=3; b*/
=5;
だから
a=5;
0033デフォルトの名無しさん
NGNG(゚Д゚)ハァ?
0034デフォルトの名無しさん
NGNG(゚Д゚)ハァ?
0035デフォルトの名無しさん
NGNG初めて見ました。
0036デフォルトの名無しさん
NGNG一人ボケ一人突っ込みかよ。
0037デフォルトの名無しさん
NGNGa = 1/*p;
0038デフォルトの名無しさん
NGNGむしろ一人突っ込み一人ボケ。
0039デフォルトの名無しさん
NGNG普段から
a = 1 / *p;
のように演算子の前後に空白を開けてれば問題ない。
0040デフォルトの名無しさん
NGNG0041デフォルトの名無しさん
NGNG俺の事です
0042デフォルトの名無しさん
NGNG楽しかった。
0043デフォルトの名無しさん
NGNGトリッキーの1ってここのスレの人?
0044デフォルトの名無しさん
NGNG↓
xor eax, ebx
xor ebx, eax
xor eax, ebx
いただきました。
0045デフォルトの名無しさん
NGNG入れ替える必要は、ほとんど無いだろ
0046デフォルトの名無しさん
NGNGすげー盛り上がっててかなりいい感じだったね<前スレの最初の方。
このスレにも降臨してくれないかな・・
0047デフォルトの名無しさん
NGNG0048デフォルトの名無しさん
NGNGint main=0xc3;
0049デフォルトの名無しさん
NGNG0050デフォルトの名無しさん
NGNG最近のCPUではパイプラインが有効に働かず遅くなるだけ。
0051デフォルトの名無しさん
NGNGその言い方、ダウトっぽい
0052デフォルトの名無しさん
NGNG101 jmp 100
0053デフォルトの名無しさん
NGNGloop
0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNG$x=$_='#!/usr/bin/perl&$x=$_=";&s/\046/\n/g;s/\042/\047$x\047/;print;&';
s/\046/\n/g;s/\042/\047$x\047/;print;
0056デフォルトの名無しさん
NGNGおまいら皆アフォ?
矩形(くけい)だろ、ヴォケ
0057デフォルトの名無しさん
NGNG2ch でその突っ込み...、しかも10日も立ってから...。
はっ !! もしかして本人なのか ?
005856
NGNG今前スレ読んでるんだが面白いな
短形ってがいしゅつとかの類かね、素で間違ってそうなんだが
005956
NGNG0060デフォルトの名無しさん
NGNGいきなりキレかよ!
0061デフォルトの名無しさん
NGNG思わず短小、もとい苦笑
006256
NGNGいつも突っ込めずに居るんだ(;´д`)ストレスタマルヨー
0063デフォルトの名無しさん
NGNG006456
NGNG任意の文字列を、10進数に変換するコードを書きなさい。
char *binary = "11011100";
int decimal;
/* */
printf("%s is %d\n",binary,decimal);
0065デフォルトの名無しさん
NGNGこの文がどれだけ曖昧で意味不明か、自分でわかってる?
数値自体は2進数で「表示」しようと10進数で「表示」しようと
同じ値だから変換もなにもないし、
そもそも元の文字列が何進数を文字列にしたものなのかわからない。
多分、「任意の2進数を表す文字列を数値に直し、10進数として表示しなさい」
って意味だと思うけど。
0066デフォルトの名無しさん
NGNGuzeeeeeeeeeeeee
いつも客にうだうだ言ってそう
0067デフォルトの名無しさん
NGNG0068デフォルトの名無しさん
NGNG> 見りゃ分かるだろ、
仕様書もまともに書けない客にこう言われてカリカリしてたんじゃないですか。
0069デフォルトの名無しさん
NGNGだれも反応してくれないけど,地雷だと思った?
実行すると,自分自身を表示するperlプログラムでした.
Cで同じことするプログラム キボンヌ
0070デフォルトの名無しさん
NGNG仕様書まともに書けない客=普通
客から仕様を上手く引き出せない技術屋=無能
だと思った。
0071デフォルトの名無しさん
NGNG> 実行すると,自分自身を表示するperlプログラムでした.
それは分かるけど、
> Cで同じことするプログラム キボンヌ
そういう意図が隠されていたとは気づかなかった。
0072デフォルトの名無しさん
NGNGワインバーグの「要求仕様の探検学」でも読みましょう、ということで
http://www.amazon.co.jp/exec/obidos/ASIN/4320023528/ref=sr_aps_b_/249-2652411-1648337
>>69
前スレ見てね。不動点プログラムで検索すれば見つかるよ。
トリッキーの1によれば、
10 LIST
だそうです(笑)
>>64
まずは素直なコードから。コンパイルしてないのでエラーあったらスマソ
char* p=binary;
while(*(p++));
for(int r=0,i=0;p!=binary;--p,++i) r+=(1<<i)*(*p-'0');
0073デフォルトの名無しさん
NGNG> 客から仕様を上手く引き出せない技術屋=無能
技術屋つってもいろいろあるわけだが、「客から仕様を引き出す」ってのがSE
の仕事だから、それがうまくできないSEなら無能だな。
0074デフォルトの名無しさん
NGNG自己レスすまそ。バグ内包してますな。
でもまぁトリッキーでないコードなので修正はやめておきます
0075デフォルトの名無しさん
NGNGうちはいつまでたっても ひとりXP ですよ
0076デフォルトの名無しさん
NGNG「もしかしてクケイの事?(笑)」ぐらいにして
0077デフォルトの名無しさん
NGNGこのスレに限らずこの板の全体的な(技術or人間)レベルが落ちている
可能性が高いな
0078デフォルトの名無しさん
NGNG0079デフォルトの名無しさん
NGNGどうでしょ?
char *p = binary;
decinal = 0;
while (*p) decimal = (decimal << 1) | (*p++ - '0');
008079
NGNG0082デフォルトの名無しさん
NGNGお前さぁ、それに"10"を渡したらなんて表示されるか考えてみたか?
0083デフォルトの名無しさん
NGNG多分最速ではないかと
unsigned int d=0,i=sizeof(int)*8;
char *p=binary;
while(*p!='\0') (*(p++)-'0')?d+=(1<<(--i)):i--;
d>>=i;
0084デフォルトの名無しさん
NGNG文字列→変数のマップを用意して(以下略)
0085デフォルトの名無しさん
NGNGchar *p="任意の文字列";
long num = (int)p;
「任意の文字列を10進数に変換しろ」だけではこーいう解釈も(無理矢理)成り立つ罠。
元の文字列の条件と、読み取りルールをきちんと書け。
ex.
「'0'と'1'からなる任意の文字列を2進数として読み取り、
結果を数値型変数に格納せよ」
0086デフォルトの名無しさん
NGNGいや、もうその話題は終わったから
つーか何でそんなに粘着なの?
0087デフォルトの名無しさん
NGNG何処からどう見ても2
0088デフォルトの名無しさん
NGNG#include <limits.h>
char *p=binary;
unsigned int c,d=0,i=sizeof(int)*CHAR_BIT+1;
while(((c=*p++-'0')>>1)==0&&--i)d=(d<<1)+c;
0089デフォルトの名無しさん
NGNG0090デフォルトの名無しさん
NGNG0091デフォルトの名無しさん
NGNGwhile(--i&&((c=*p++-'0')>>1)==0)d+=d+c;
0092デフォルトの名無しさん
NGNG七行かぶれで短くしてるだけやん
0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNG0095デフォルトの名無しさん
NGNGなにせ「ファイルを自動で開く」という至極基本的な動作を行う
プラグインが簡単に作れない。
0096デフォルトの名無しさん
NGNGよー知らんけど、それはお前の技術力がないからということはないのか ?
0097デフォルトの名無しさん
NGNG漏れに技術力があるかどうかは知らんが、
そのソフトのAPIだけでは実現できず(どーやっても選択ダイアログが出る)、
キーストロークのエミュレートしたり、DDEコマンド投げたりせんと実現できん
というのはどう考えても変だと思うんだよ…
ちなみにマニュアルには「スクリプトを実行しる!」みたいな事が書いてあった。
しかも上記の手を使ってもプラグイン実行中に開けない。
(本体がコマンド受付状態になってからでないと開かない)
0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNG禿同、回避方法がトリッキーだったりするけど。
0100デフォルトの名無しさん
NGNG100get
010195
NGNGオブジェクトGetした後の開放手段がバラバラ
(free、delete、独自関数、開放不要のごちゃ混ぜ)
とかいった話はマ板でネタにしてきます。
これで業界トップのシェア持ってるというから、驚きなんだよなぁ…
■ このスレッドは過去ログ倉庫に格納されています