[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 05/09 19:27 / Filesize : 148 KB / Number-of Response : 639
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

スレ立てるまでもない質問はここで@ム板 103匹目



1 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:04:14 ]
質問する前にGoogleで検索しましょう。www.google.co.jp

プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。
Javascript は Web 制作板、CGI は Web プログラミング板へ。
業界談義、愚痴はプログラマ板へどうぞ。
ゲーム関係の話題はゲーム製作板へどうぞ。
ネタ、板とは関係の無い話題はご遠慮ください。

前スレ
スレ立てるまでもない質問はここで 102匹目
pc12.2ch.net/test/read.cgi/tech/1257481818/


355 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 03:49:40 ]
あまり冷たい話をしても、かわいそうかなと思ったので

1 カードデータは用意する
2 ユーザにカードを配る
3 番号のかかれた玉を引く
4 玉の番号をユーザに知らせ、カードに穴をあける
5 縦、横、斜めがそろった場合、ビンゴを主催者に通達する
6 主催者はカードと番号を確認し、商品を確定する

とまあ、こんな具合で
各ターン、どんな方法で実装するかが問題なので、それらを定義してもらわないと
単純に数字と紙を照らし合わせたところでクソの役にもたたない

356 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 03:51:58 ]
struct BINGO{
int data[5][5]; //座標の数字
int state; //ビンゴ済みか
};
int bingo_check(struct BINGO* d){
int i,j;
for(i=0;i<5;i++){
if(d[i][0]==d[i][1]==d[i][2]==d[i][3]==d[i][4]==-1)return true;
if(d[0][i]==d[1][i]==d[2][i]==d[3][i]==d[4][i]==-1)return true;
}
if(d[0][0]==d[1][1]==d[2][2]==d[3][3]==d[4][4]==-1)return true;
if(d[4][4]==d[3][3]==d[2][2]==d[1][1]==d[0][0]==-1)return true;
return false;
}
int punch(struct BINGO* d,int n){
int i,j;
for(i=0;i<5;i++){
for(j=0;j<5;j++){
if(d[i][j]==n)
d[i][j]=-1;return;
}
}
}
main(){

....
}

捻りなし

357 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 03:55:34 ]
ちょっと待て

> if(d[i][0]==d[i][1]==d[i][2]==d[i][3]==d[i][4]==-1)

何だこれは

358 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 04:01:49 ]
>>357
フリースポットやパンチ済みのとこには-1を入れて
1列目〜5列目の縦列にビンゴが無いか捜索してる

5分で書いたので型とか適当だけど流れだけってことで。

359 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 04:06:18 ]
リアルタイムで開けていくシステムじゃないと、ビンゴの意味ってないんだよね
それなら最初からクジ形式にしとけと。

360 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 04:15:53 ]
>>358
仮言語だったのね、了解
C/C++ とかじゃまともに動かないコードだったもので

361 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 05:01:29 ]
>>355
ありがとうございます。やってみます。

◆仕様
用意された複数のビンゴカードデータの中から、ビンゴになったカードを探し出すプログラム

◆前提
ビンゴカード;データとしてプログラムに覚えさせる
ビンゴゲーム:他プログラムで実行

1. カードデータは用意する。(100件くらいのビンゴカードのデータを用意)
2. ビンゴカードのデータは登録順に数字を振りあてられる
3. 他ソフトでビンゴを実行する
4. ビンゴソフトで出た順に1-99までの数字をプログラムに入力していく。
5. 数字の一致しているビンゴカードナンバーを表示
6. 用意されたデータからリーチ・ビンゴになったカードのナンバーを表示する

以上です。
難しいですね。ほんとにありがとうございます。

362 名前:デフォルトの名無しさん [2010/01/24(日) 08:21:45 ]
この問題を
ttp://cid-bb07f1eec42c2c56.skydrive.live.com/self.aspx/.Public/DisablingAccer.PNG#resId/BB07F1EEC42C2C56!143
避ける方法を教えてクリ

363 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 11:22:23 ]
>>361
ビンゴカードといっても5x5なのか3x3なのかとか、どんなサイズにも対応するのかとか
数字を入力するのはテンキー?キーボード?PC端末が目の前にあるわけ?とか。
ビンゴカードナンバーを表示するのは電光掲示板?ディスプレイ?とか
CUI?GUI?
専門のデザイナーを雇って「美少女がカードナンバーが書かれたボードを持ってる図」とかやるのか?とか。


あとから「見栄え悪いんだけど」とか言って修正させるのなナシだぜ。



364 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 11:47:50 ]
こういう客から、後から文句を言われない仕様をヒアリングして
作成するのだから、15万円は高くない。

365 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 14:35:39 ]
処理の軽い擬似乱数の発生方法を教えてください
シードになる整数sと整数nを渡されたら1〜nまでの乱数を生成するような感じで
偏りの無さよりも処理の軽さを優先したいのですが、
毎回シードを変形させてnの剰余を取るような感じでいいでしょうか?
大体一回の処理で100万回くらい使われそうな部分なのですが

366 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 14:45:54 ]
最近のハードにはCPUのクロックをはるかに上回る速度で量子物理学的に安全な乱数を生成する専用の回路が備わっていて
普通の商用コンパイラ使ってれば標準ライブラリの乱数生成関数で問題ない事が多い。

367 名前:365 mailto:sage [2010/01/24(日) 14:50:48 ]
回答ありがとうございます
あまり乱数生成部分をいじっても速度の向上にはならないということでしょうか
別の部分の処理を見直してみます

368 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 15:34:58 ]
/dev/random を必要なだけ( 100万 x nバイト)読む、という手も

369 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 15:35:46 ]
止めろバカ。貴重な共有リソースが枯渇する。

370 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 15:37:12 ]
>>366
どこの電波を受信してるんだ君は。

371 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 15:46:23 ]
>>368
エントロピープールが枯渇して読み込みがブロックするようになるぞ
/dev/urandom を使え(あるなら)

372 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 16:05:41 ]
答え1
とりあえずMT使っとけ

答え2
100万ぐらいならPark and Millerの最低基準生成系でいい。
LSBには規則性があるし、2次元以上で相関もあるけど。
整数の乗算がハードウェアでできれば軽い。
定数での剰余は工夫すれば除算なしでできる(うまくすればコンパイラがやってくれる)。

373 名前:デフォルトの名無しさん mailto:sage [2010/01/24(日) 16:44:49 ]
MT よりは SFMT。
ttp://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/index-jp.html



374 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 00:36:44 ]
>>371
逆では?

375 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 00:55:08 ]
>>374
知らないなら、黙ってれば良いのに。
linux.die.net/man/4/urandom

376 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 01:02:40 ]
ほんとだ。逆だと思ってた

377 名前:デフォルトの名無しさん [2010/01/25(月) 09:51:22 ]
今はvbaでプログラムを作っているのですが、
独立したプログラム(.exeファイルなど)も作りたくなってきました
プログラム言語は何が良いでしょう?
とりあえずC++をやってみましたがすぐに挫折しました
VB.netの他に何か良いもののはありますか?

378 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 10:13:16 ]
C#

379 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 10:21:51 ]
そもそも何を作りたいのかも分からないのにどうしろというんだ?
作るものが分からない状態で道具を選ぶなど愚か以外の何者でもない。

380 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 10:28:37 ]
愚か者が使える言語を質問しているのだろう。

381 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 10:53:27 ]
自分ができる範囲を下積みによって増やすことで初めてやりたいことが見えてくることもある

382 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 10:54:12 ]
>>377
HSP

383 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 13:16:38 ]
VBでいいんじゃね
メモリやバイナリをさわりたくなればほっといてもCにくるだろう



384 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 13:34:17 ]
なぜexeだと独立していると思ったのだろうか

385 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 13:35:15 ]
>>381
創らなくても既存のアプリを発見したり

386 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 15:10:05 ]
ソースファイルとヘッダファイルって
多く分けたほうがコンパイル時間は短くなりやすかったりしますか?


387 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 15:24:15 ]
基本的にソースファイルは別のコンパイル単位から参照されその都度コンパイルされる事を頭に入れておかなければならない。
ちなみにひとつのソースファイルは変則的なincludeさえしていなければひとつのコンパイル単位として扱われるので
別のコンパイル単位が編集されても関係ないので再コンパイルされずに済む。
そう考えると多く分けた方が速い。
ぶっちゃけひとつの関数にひとつのソースファイルなんてしてもいい。
コンパイル単位を横断する最適化も今時はコンパイラの設定次第でどうにでもなるし。

388 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 15:50:10 ]
メンテナンス性で判断すべき。

コンパイル時間が5時間か10時間かの差になる、というのでもない限り。

389 名前:デフォルトの名無しさん [2010/01/25(月) 16:05:38 ]
>>386
make使ってる前提だけど
モジュールの切り分けがうまくいっていて
修正時に一部のモジュールだけの変更とかのときは短く出来る
全部のソースに共通のヘッダを書き換えるような変更のときは
結局全部コンパイルすることになる
どういうシーンでどういう動きになるか意識出来てれば効率よく開発出来る

390 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 18:08:34 ]
実際に分けてみたらコンパイル早くなりました
他ソースから参照されるのは基本的にヘッダファイルだろうから
ある意味、ヘッダファイルでインタフェースさえ完成していれば
ソースだけがコンパイルされてウマーなわけですね

391 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 18:57:23 ]
放置するとヘッダ地獄に

392 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 00:25:42 ]
pimplでニヤニヤして
templateで打ちのめされる

393 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 00:37:18 ]
C++で利用できるSVG形式の読み込み〜描画ができるライブラリを探してるんですが、
どこで聞けばよろしいでしょうか?



394 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 10:30:10 ]
pc11.2ch.net/pcqa/

395 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 11:59:43 ]
Windows上で、C++ホスト、C#クライアントでローカルの
(同一マシン上のプロセス間)通信を行いたいと考えています。
通信は同期的に行い(それぞれでイベントが発生する度に通知)、
サーバー、クライアント間は双方向で送受信を行います。
クライアントとホストはとりあえず一対一で十分で、
複数のクライアントの同時接続等は必要ありません。

このようなプロセス間通信を行うのに適当な手法を教えて頂けないでしょうか。


396 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 12:55:38 ]
名前付きパイプとか

397 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 13:04:57 ]
認証するならnamed pipeかsocket。
理由: 認証後つなぎっぱなしにすれば良いから。

398 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 14:45:46 ]
名前付きバイブ

399 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 15:42:48 ]
>>396-397
名前付きパイプ試してみます。
C++からはCreateNamedPipe()、C#からはWCFですかね。
どうもありがとうございました。

400 名前:デフォルトの名無しさん mailto:2fast2@live.jp [2010/01/26(火) 17:35:52 ]
5GBくらいのデータが入っているテキストファイルを固まらないで
ソートや重複削除できるソフトなど知っている方いらっしゃいますか?
色々調べてはいるんですが、どれも固まってしまってだめでした。
なければVBとかで作ろうかと思っています。
よかったら回答お願いします

401 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 17:47:21 ]
マルチスレッドで処理するとか。
VB.NETなら簡単にできるぞ

402 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 17:51:29 ]
メモリが少ないというのがで固まってるんだったら
ワーキングメモリが少なくて済むソートアルゴリズムを選択するべき。

403 名前:デフォルトの名無しさん [2010/01/26(火) 18:01:43 ]
interfaceAbcを直接実装せずに
baseAbcImplを挟んでこれを継承させる形でAbcを実装したクラス群がある場合、
baseAbcImplが置かれる理由は何が考えられますか?

あるオープンソースの設計を読んでいて疑問だったので



404 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 18:13:08 ]
最終的な具象クラスのいずれにも共通する部分だけを実装してあるのでは
各具象クラスそれぞれに同じ共通コードを書くのは無駄だから、
共通部分は上のクラスに持っていって、異なる部分だけをそれぞれ個別に実装する

405 名前:デフォルトの名無しさん mailto:2fast2@live.jp [2010/01/26(火) 18:17:24 ]
>>401さん
レスありがとうございます。
.NETで簡単にできるんですね。もし宜しければでいいんですが、何か参考になるものなど
ありませんでしょうか?無理なら自力で色々調べてやってみます。

>>402さん
レスありがとうございます。アドバイスありがとうございます。参考にさせて頂きます。

406 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 18:20:54 ]
awkに関する質問です
(awkでなくてもいいんですが、簡単な処理はawkが一番手っ取り早いと聞いたので

下のような2つのファイルから
平均を出したいんですがどのようにすればいいのでしょうか?

---file A---
1 87
2 89
3 40
4 90
5 33

---file B---
1 45
2 22
3 78
4 60
5 19

407 名前:406 mailto:sage [2010/01/26(火) 18:29:33 ]
ほしい結果は

---file C---
1 (87+45)/2
2 (89+22)/2
3 (49+78)/2
4 (90+60)/2
5 (33+19)/2

です。

408 名前:406 mailto:sage [2010/01/26(火) 18:33:28 ]
---sum.awk---
{
if(NR==1){
a=a+1;
}
}

END{
PRINT a;
}

ととりあえず書いてみて
awk -f sum.awk fileA fileB
と実行しても、合計されず
file Bの45という値しか出てこないです

次のfileを読み込むたびに変数は初期化されてしまうのでしょうか?
awkではファイルどうしの平均を求めるのは無理なのでしょうか?

409 名前:406 mailto:sage [2010/01/26(火) 18:44:47 ]
なんでできないか少しわかりました。
>>408の結果は間違いで
file Aの87が出力されるみたいです。

どうやらNRは新しいファイルを読み込んでもリセットされないのですね。

NRがリセットされず
file Cの1行目はNR=6と数えられるっぽいですね。
ってことはNRをデータ数5で割った余りで
判定させるとかすればできそうです。

できそうですが、もうちょっとスマートなやり方あったらぜひ教えてください。

410 名前:406 mailto:sage [2010/01/26(火) 18:46:15 ]
>>409
× file Cの1行目は〜
○ file Bの1行目は〜

411 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 20:29:23 ]
>>405

vb.net(というか.NET Framework)はスレッドが使いやすい。
System.Threading.Threadでググればどういうのかが分かる

他にも.NET 4.0から(だっけ?)
Parallelとかで簡単に並列処理を行えるし。

C#でも良し、VB.NETでも良し、C++/CLIでも良し、
IronPythonでも良し、IronRubyでも良し、
F#でも良し、J#でも良し

好きな言語を選んで頑張ってくれ

412 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 21:24:57 ]
2次元空間である4点があります。A(x1,y1),B(x2,y2),C(x3,y3),D(x4,y4)
この4点で四角形が出来ますが直線E(x5,y5)-(x6,y6)と
交わっているかどうかを計算式?か何かで求める方法を教えてください
Cプログラムで教えていただけると幸いです。(公式などでもいいです)


413 名前:質問 [2010/01/26(火) 21:29:08 ]
exeファイルの大きさが大きくなると出てくる弊害ってどんなものがあるでしょうか?



414 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 21:44:56 ]
>>412
つ[線分 交差判定]

415 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 22:09:29 ]
>>413
ダウンロードに時間がかかる

416 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 22:18:22 ]
>>413
ウィルスチェックに時間が掛かる
ネットワークドライブとかにあると起動にも時間掛かる

100MB 超えてる exe とかざらに有るけど

417 名前:質問 [2010/01/26(火) 22:28:21 ]
>>415
>>416
なるほど。その程度の問題なら大したこと無いですね。

他にパフォーマンスやメモリ関係の上限に関わる問題はありませんか?

418 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 22:40:43 ]
メモリの上限はexeのサイズよりも
そのexeがどんだけheap使うかっていう問題
1kBのexeでもメモリ食いつぶせる

419 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 22:45:44 ]
32ビットアプリなら現在の潤沢なメモリを食いつぶすのは不可能。

420 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 22:56:49 ]
あんま関係ないけど、実行ファイルとかドライバってせいぜい数MBで収まって欲しくね?

421 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 23:42:09 ]
javaでprivate static finalにset/getを付ける事は愚かな事ですか?

422 名前:デフォルトの名無しさん [2010/01/26(火) 23:45:44 ]
>>419
ヒント:マルチプロセス

423 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 23:49:28 ]
クラスAとクラスBはsingletonパターンを実装しています
public static HogeA getInstance();
public static HogeB getInstance();
HogeAのあるメソッドでは、HogeBのインスタンスを使った処理が必要です
またHogeBのあるメソッドでは、HogeAのインスタンスを使った処理が必要です

つまり、クラスAとクラスBは相互に依存しあっています
このような状態はなるべく避けたほうがいいのでしょうか?



424 名前:デフォルトの名無しさん [2010/01/26(火) 23:52:45 ]
なぜ避けた方がいいと思ったの?

425 名前:423 mailto:sage [2010/01/27(水) 00:00:22 ]
>>424
後でクラスを修正する可能性が高いので、
バグを生み出す原因になると思ったからです

426 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 00:08:38 ]
結論が出たな。

427 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 00:42:12 ]
>>423
先に初期化された方がまだ初期化されない方にアクセスするときに待つようにすればいい

428 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 00:49:46 ]
>>421
getはともかくsetできないんじゃ……。
それはともかく、ClassName.getInstance()でprivate static finalな値を返すのはしばしばやっている。

429 名前:423 mailto:sage [2010/01/27(水) 01:01:39 ]
>>427
わかりました

>>426>>427のどっちのほうが一般的なんですかね?

430 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 01:28:41 ]
426

431 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 02:07:12 ]
>>407

欲しいのは平均値の計算結果じゃなくて、その式の文字列なの?
計算結果でいいのならこんなのとか。

FNR == 1{
    filecount += 1
}
{
    sum[FNR] += $2
}
END {
    for (i=1; i<=FNR; i++)
        print i, sum[i]/filecount
}

iいずれにしもて、awk なら awk スレガあるからそっちのほうがいいんじゃないか?


432 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 07:13:25 ]
>>422
exeが使うヒープの話をしていたのに、
突然複数立ち上げた場合に話を逸らして恥の上塗りをするのはみっともない。

433 名前:406 mailto:sage [2010/01/27(水) 07:34:14 ]
>>431
ほしいのは計算結果です。
ありがとうございます!
シンプルですばらしい
できなかったらまたawkスレで聞いてみることにします
ありがとうございました



434 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 09:59:21 ]
スレ違いだったらすいません
例えば2chのdatファイルは
pc12.2ch.net/tech/dat/1262163854.dat
になりますが、これをftpでダウンロードすることは出来ますか?


435 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 10:08:34 ]
http://
の部分を
ftp://
に書き換えてブラウザから試してみれば?

436 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 10:09:07 ]
出来ませんし、その必要性も皆無です。

437 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 10:20:14 ]
>>435>>436
ありがとうございました
何か意味のないことをしていたようです

438 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 10:22:26 ]
httpが通らない監獄からアクセスするとか。

439 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 10:32:53 ]
監獄とは何でしょうか
ぐぐったら監獄実験ばかりでてきて怖いです

440 名前:デフォルトの名無しさん mailto:sage [2010/01/27(水) 10:35:17 ]
監獄=刑務所


441 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 11:12:21 ]
viで今カーソルがある単語を検索するって
どうやるんだっけ?
そういうコマンドってなかったっけ?

442 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 11:38:29 ]
1掛ける0も0掛ける0も1掛ける1も1232掛ける1425も計算速度はおなじですか?

443 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 11:56:23 ]
CPUがひとつのワードに対して行う演算は定数時間



444 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 11:59:24 ]
2で掛ける時と3で掛ける時は条件によって違う場合がある

445 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 12:14:12 ]
>>443
乗算や除算などは複数クロックにまたがる動作になっていて、
手続きの途中で答えが出たら打ち切るなどで、時間が変わる場合もある。

446 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 13:19:41 ]
>>441
*または#

447 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 13:28:24 ]
>>446
おお!これだこれ
ありがとうございます!

448 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 16:10:57 ]
>>442
にしてもなんで全角と半角ごっちゃなの?
なんか見てて気持ち悪い事この上ないんだが

449 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 17:08:09 ]
>>448
そういう人は専ブラの置換機能を使うといいですよ
いくら啓蒙しようと実現不可能ですから

450 名前:デフォルトの名無しさん [2010/01/28(木) 19:49:15 ]
Cでマクロの引数に無理やりにでもブロック渡す方法ないの?

#define loop(ct, exp) for(int i=0; i<ct; i++) exp

loop(5, { if(i%2){ printf("%d\n", i); } });

みたいに。

451 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 20:30:32 ]
>>450
それでできるじゃん。
何が不満なの?

452 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 23:05:48 ]
ソース読んでたらこんなのあったんですが理解できません
なにをtypedefしてるんでしょうか?
アホの俺にも解るように人力コンパイルお願いします

typedef BOOL (WINAPI *phoge)(UCHAR aaa[64], UCHAR bbb[64]);

453 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 23:12:42 ]
>>452
関数ポインタをtypedefしている。
名前はphogeで呼び出し規約はWINAPIだが、それは_stdcallだっけ??
それで、引数がUCHARの固定配列を二つ。

という関数ポインタを定義してるように見えるね。



454 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 23:14:01 ]
抜けてた。
そのポインタの返り値はBOOL。

455 名前:デフォルトの名無しさん mailto:sage [2010/01/28(木) 23:21:18 ]
ほれ

typedef bool (_stdcall *phoge)(char aaa[64], char bbb[64]);
bool _stdcall f(char a[64],char b[64]){
cout << a << endl;
cout << b << endl;
return true;
}
int main(int argc, _TCHAR* argv[]){ phoge p=f;
char a[64]="hello";
char b[64]="world";
p(a,b);
return 0;
}

456 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 00:37:36 ]
>>453-455
なるほど、ありがとうございます
用は関数も型宣言してしまえばポインタ操作でコール出来るってことですね

使い道は解ったのだけど何でこのtypedefで
phoge型の変数を宣言できるようになるんでしょうか?
うーん意味は解ったのにコードが読めない・・・orz
関数をtypedefしてるから関数名の型ができる?


457 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 00:42:57 ]
phogeは「関数名」ではなく「型名」。
typedef int hoge;
のhogeと同様。

458 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 01:29:00 ]
>>457
自分の理解が追いつかなくて申し訳ないですが
その例えだとintの部分ってどれに該当するのでしょうか?

459 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 01:47:21 ]
typedef int MyInt;

MyInt a = 3;
MyInt b = 4;
MyInt c = a + b;



460 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 02:00:08 ]
>>458
bool (_stdcall *)(char aaa[64], char bbb[64])
の部分
パラメータと戻り値の型が同じ関数を入れることができるようになるよ

461 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 02:11:08 ]
BOOL 名前; // BOOL型の変数
BOOL 名前(引数リスト); // BOOLを戻す関数
BOOL (*名前)(引数リスト); // 「BOOLを戻す関数」を指すポインタ変数
typedef BOOL (*名前)(引数リスト); // 「BOOLを戻す関数」を指すポインタ型

462 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 02:46:32 ]
>>459
申し訳ないですがそのコードの
意図するところが理解できませんでした
>>460
当然の事を聞いてしまいました
お手数おかけしました

>>461
型宣言って
typedef 宣言前の型 宣言後の型;
という書式だと認識しているのですが
宣言前の型 = 「BOOLを戻す関数」を指すポインタ型
だとして宣言後の型は「名前」の部分に当たるみたいですが
どうも自分が認識している書式と違っていて混乱しています

463 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 03:00:44 ]
>>462
つまり
typedef BOOL (*)(引数リスト) phoge;
だったらわかりやすいのに、ってことか

ついでに言うと、
typedef int[8] int8array;
ならいいのに、と。



464 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 03:09:15 ]
あ、そうそう、もし>>463の記述を正とする場合、関数の定義は
BOOL (引数リスト) fname // でもこうなら関数ポインタは BOOL (引数リスト)* p となって欲しい?
となるだろうし、配列は
int[8] arr;
とならなくちゃ整合性がとれないよね;p

465 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 04:04:13 ]
とにかく、「typedef 宣言前の型 宣言後の型;」は正しくない(もしくは、ごく単純な場合にしか当てはまらない)ということ。
kmaebashi.com/programmer/pointer.html

466 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 08:26:51 ]
>>462
typedef int a;
aは「int」型

typedef int a[10];
aは「要素数10のintの配列」型

typedef int (*a)();
aは「intを返す(プロトタイプ宣言の無い)関数」型

typedef int (*a)(int, char *);
aは「intを返す(プロトタイプ宣言された)関数」型

467 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 08:36:56 ]
>>466 関数へのポインタ、じゃないか?

つまり普通の変数宣言であれば、変数名になる部分が、
先頭にtypedefが付いていると、型名になる、ということ。

468 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 09:47:02 ]
あぁ、そうだな。
関数→関数ポインタ
と変換して読んでくれ。

469 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 10:36:11 ]
なんか、STLのアルゴリズムでデータを削除し、かつ削除した部分を他へコピーするようなやつが
あったように思うんですが、なんでしたっけ?

470 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 11:12:40 ]
.htaccessのリダイレクトで

A/x/y/B/z/ を
A/x/y/C/z/ という風にBとCだけ変えるにはどう記述すればいいですか?

ABCは固定で、xyzが変動する英数字で組み合わせると膨大になるのです。

471 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 12:16:25 ]
>>470
それがプログラム開発とどういう関係があるのだ?

472 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 12:54:45 ]
もう一度質問します

2次元空間である4点があります。A(x1,y1),B(x2,y2),C(x3,y3),D(x4,y4)
この4点で四角形が出来ますが線分E(x5,y5)-(x6,y6)と
交わっているかどうかを計算式?か何かで求める方法を教えてください
Cプログラムで教えていただけると幸いです。(公式などでもいいです)

>>414で教えていただいた「線分 交差判定」で調べてみましたが
四角形の内側にあるときは線分は交差しない場合もあって
うまい方法がわかりません
すみませんが宜しくお願いします



473 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 13:05:30 ]
中学数学の範囲だってわかって聞いてる?



474 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 13:10:05 ]
ある点Eが四角形ABCDの内側か外側かを判定する方法がわからないということか?

475 名前:472 mailto:sage [2010/01/29(金) 13:14:36 ]
そういうことになるのでしょうか?
しかし四角形は正方形や長方形ではなく
いびつな形もありますのです
その内側になるという判定方法はお知りでしょうか?

476 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 13:19:32 ]
四角形と線分の交差判定は、四角形を構成する線分と線分の交差判定で出来る
以下線分の交差判定

点A,Bを(x1,y1)(x2,y2)
点C,Dを(x3,y3)(x4,y4)とする
点ABを通る直線の方程式
y=x*(y1-y2)/(x1-x2) + y1 - x1*(y1-y2)/(x1-x2)
除算を取り除いて
y*(x1-x2)=x*(y1-y2)+y1*(x1-x2)-x1*(y1-y2)
左辺に集めて
(x1-x2)*(y-y1)+(y1-y2)*(x1-x)=0
これに点C,Dを代入し、2つの符号が異なれば直線ABと線分CDは交差すると判定出来る
線分ABと線分CDの交差判定は、AB,CDを入れ替えて行い結果をあわせればOK


477 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 13:28:14 ]
5つの線分AB, BC, CD, DA, Eを線分ではなく直線だと想定する。
直線Eと他4つの直線とで必ず最小2つ最大4つの交点がある。
あとはその交点が線分Eに乗っているかどうかを判定すればいい。

478 名前:472 mailto:sage [2010/01/29(金) 13:31:37 ]
なるほど
直線と考えたらいいのですね
もう少し頭をひねってみます
みなさんありがとう

479 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 17:18:27 ]
凹四角形で交点がEの始点、終点と一致するときに注意が必要だな。

480 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 18:55:15 ]
3次元空間である4点があります。A(x1,y1,z1),B(x2,y2,z2),C(x3,y3,z3),D(x4,y4,z4)
この4点で四角形が出来ますが線分E(x5,y5,z5)-(x6,y6,z6)と
交わっているかどうかを計算式?か何かで求める方法を教えてください
Cプログラムで教えていただけると幸いです。(公式などでもいいです)


481 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 19:14:51 ]
三角形ABC, BCDと線分Eが交わっている問題に帰着し、
更に点X, Y, Z, T, Uからなる三角形XYZ, 線分TUに対し、
- T, Uからなる一次式を考え、
- x, y, z軸どれかを消去して投影した場合にXYZの中でXY, YZ, ZXのどれかがTUと交差しそれを線分VW
 あまった一方の点をSとし、
- VWからなる一次式においてTUと交差する点Aを求め、それを3次元に再度置き換え直し、
- 線分ASがTUと交差するかを判定する

線形代数使えばもっと綺麗にいくんだろうけど知らん。

482 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 19:29:44 ]
四角形ABCDが平面に載っているとして
その平面と線分Eの交点を求めて
四角形ABCD内にあるかどうか


483 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 20:00:38 ]
>>472
ちょっと思いついただけだが
まず端の点が四角形の中か調べる→片方でも中にあったら交わってる
中に無かったら
その線分と四角形の四辺が交わるか調べる
コレでどうだろうか



484 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 21:55:43 ]
>>469
<algorithm>のstd::remove_copyのこと?

485 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 00:06:38 ]
>>483
両方の端点が中にあったら交わらないぞ?

486 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 00:12:58 ]
>>485
一つの角が180℃以上の四角形なら
二つの端点が四角形内部でも
辺と交わる可能性はある

487 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 11:07:19 ]
>>485
あれ?>>472を見るに四角の中に入ってる場合も交わってると判断したいお読んだんだが違ったか?
中に入ってるのを交わってるとしないなら
単に四辺と交差するか調べるだけで良いしね

488 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 11:08:45 ]
したいお→したいと
すまん

489 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 11:37:30 ]
大丈夫だお^^

490 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 14:15:45 ]
Javaスレで聞くべきかPythonスレで聞くべきか迷ったのでここで聞く。
これから急にJavaをやらなきゃいけなくなった。
Pythonの文法は一通り理解してるつもりでいるんだけど、PythonとJavaのオブジェクト指向って似てるもん?だいぶ違う?
あと両者の違いでこーゆーところはハマりやすいから気をつけろってとこがあったら教えて欲しいっす

491 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 14:24:10 ]
そういうの気にせずにJava初心者としてゴリゴリ勉強していけばいいよ。
一々これはPythonで言うところの…とか対応探しやってると逆に効率悪い。
Pythonで身に付いたOOやプログラミング一般の知識はもちろん役に立つし
ネットで質問する時にPythonのキーワード使うと答えが返ってきやすいというのはあるだろう。

492 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 14:46:24 ]
なるほど。
んじゃ気にせず一から勉強してくわ。サンクス。

493 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 15:00:39 ]
>>490
断れ



494 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 17:02:34 ]
どうしてこれでn/3が計算できるのですか?

mov eax,55555556
imul dword ptr [n]
mov eax,edx
shr eax,1f
add eax,edx
//eaxに答えが入る


495 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 18:55:23 ]
>>494
55555556h ≒ 1 / 3 * 100000000h
imulを行った時点でedx:eax ≒ n / 3 * 100000000h
edxだけ見るとedx ≒ n / 3
ただし、このままだとn / 3と微妙に値が異なる場合があるので、それを調整するのがshrの意味だと思う。

496 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 21:01:35 ]
すんません、最近C#とかASP.NETとか勉強してるもんです。
googleの検索みたいに、文字を入力しいくと候補がでてくる仕組みは
Ajaxっていう技術を使ってるということでいんでしょうか?
そうであれば、Ajaxの勉強にいいサイトないし本の紹介をお願いします。

497 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 21:04:31 ]
>>495
なるほど、マジックナンバーはそこから来てたんですね
55555556は6が四捨五入した値だから
この誤差はeaxの最下位ビットに伝播して本来の値よりも少なくなるわけですね

その誤差の修正がedxの最上位ビットとの可算で済むのはきっと
誤差が少なくなるように何かの考えがあるんでしょうけど
出来ればその辺も知りたいです
また、知ってる人いたら教えてください

498 名前:デフォルトの名無しさん mailto:sage [2010/01/30(土) 23:44:43 ]
単純な四捨五入(2進だから0捨1入)だと思う。

499 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 10:46:22 ]
IPhoneっlatexをみたいので
簡易型のビューアを作ろうかと思ったのですが、latexのライセンスがいまいちわかりません。
あれはアプリの実装が自分のオリジナルでもlatexのファイルフォーマットを使えばしたがわなければいけないのでしょうか?

500 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 10:48:19 ]
IPhonexltulatex?

501 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 11:19:20 ]
従う必要はありません。

502 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 11:47:43 ]
>>501
ありがとうございます。


503 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 16:34:27 ]
【2丁拳銃】石田靖のパソコン自慢#1
ttp://www.youtube.com/watch?v=ArYDLGaEToI&feature=related

こんな動画を見つけたんだけど、2人とも初心者すぎて話にならん
作っているソフトとか言語の話になるのかと思いきや、タッチタイプの速さ自慢かよ
しかも、タイプの速度かなり遅いし

お前らはこの動画を見て、どう思いましたか?



504 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 16:41:29 ]
これが公共の電波に乗ってたのかよ。スレ違いを通り越して板違いだが本当にTV終わってるな。

505 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 16:47:07 ]
インターネットTVとかじゃないのこれ? 公共の電波に乗ったの? 知らんけど。

個人的には、この動画タイトルから「作っているソフトとか言語の話になるのかと思」う
>>503の感性のほうが意味不明だと思った。
似たようなノリで、もし自作パソコン云々という動画があったら「CPUの設計とかの話になるのかと思」うのかな。

506 名前:503 mailto:sage [2010/01/31(日) 16:51:01 ]
>>505
いや〜、一番最初に「俺めっちゃ詳しいよ」って言っていたから(>>505のリンクじゃな動画で)

>作っているソフトとか言語の話になるのかと思
ここは、俺が思った事を書いただけで

507 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 17:03:58 ]
OSのことを基本ソフトって言ってしまうくらい恥ずかしい

508 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 17:05:07 ]
それ以上に恥な行為だから安心しろ

509 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 19:53:14 ]
>>497
丸め方向は0側、+側、-側があって、intの割り算は絶対値で見て端数切捨てだから、単純な掛け算では0方向への丸めが必要になる。
この計算方法の場合、edxを見に行った時点で2の補数形式で端数を切り捨てているわけだが、+の値の場合は0/-方向へ-の値の場合は-方向、つまり-方向へ丸める計算になっている。
-方向へ丸まった値を0方向へ丸める場合、どう丸めなおすべきかは符号で決まるから0x1f=31ビットシフトで最上位ビット=符号ビットを引っ張ってきてる。
割り切れる値がどう丸まっててどう補正されるのかはしらん。…取り敢えず実際に計算してみればいいかと思う。

数値の丸めについては書籍が出るような話だから厳密に知りたいならその手の書籍をどうぞ。

510 名前:デフォルトの名無しさん [2010/01/31(日) 20:59:11 ]
>>503
>お前らはこの動画を見て、どう思いましたか?

「こいつより俺の方が上手く出来るんだ」「それなのにこいつだけ目立って悔しい」という嫉妬の感情を抱いた。

そんな自分がとてつもなく小さい人間に思えた。俺は虫けら以下だ。悔しい。

でも、
「結局、いくらパソコンが上手に出来ても、俺はこいつのように上手くしゃべれない」
「だから、こいつみたいに目立つことはできないんだ」というあきらめの感情を抱いた。

自慢することがパソコンしかない俺は、俺よりパソコンの下手なこのタレントに嫉妬の感情を抱きながら、
日の当たらないところで、一生虫けらのように生きていくんだ。

くやしいのう、くやしいのう。

511 名前:デフォルトの名無しさん mailto:sage [2010/01/31(日) 22:26:15 ]
>>505
俺も同じこと思った。
なんせ「パソコン自慢」だもの。
素人さんの世間話だろうなくらいしか思えん。

512 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 01:26:09 ]
小倉がとくダネで、IT関連のしったか解説をして間違ってたら
イラっとするけど、芸人のパソコン自慢じゃな。

513 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 01:28:05 ]
スレタイ読まない奴にイラっとくる



514 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 01:31:09 ]
ちょっと脱線したらでてくる自治厨にイラっとする。

515 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 01:33:39 ]
>>512
真に受けるアホが量産されるから小ヅラよりもやばいと思う

516 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 02:04:06 ]
じゃあ、お前らがTVに出て解説すればいいじゃんwwwwwwwww

517 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 02:31:44 ]
何千、何万の聴衆の前で話すことを考えて欲しい。

もしかしたら、俺たちの方が小倉やその他のテレビタレントよりもIT系の知識があるかもしれない。
しかし、俺たちは、彼らより上手く説明できないし、たぶん正確にも説明できないだろう。

日本語として論理の通った話が出来るかどうかも怪しいところだ。

俺たちはその程度の人間なんだ。

518 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 02:38:49 ]
>>517
同意できない
小倉さんのギャラの10%を専門家に廻し
Q&A方式でいいと思う

519 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 04:12:37 ]
DevC++(mingw)、win32API、win2000でイメージビューアみたいなbmp,jpg,gif,png辺りを2〜複数枚表示、目視比較させたいんだけど、なんか楽な方法ない?
GDI+考えたんだけど、使ってる開発環境が対応してないようで、reimpで追加インスコするにもなんかうまくいかないから諦めた

今はsystem()でsusie起動させてるけど不便で
ダイアログ使うのもまだ理解してないヘタレだから難しいのは勘弁な

520 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 04:13:49 ]
opencv

521 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 05:20:34 ]
ありがとう
少し試してみて、共存できそうならそれ使ってみます
まだ考えてなかったけど、画像処理もできるのは便利そう

522 名前:デフォルトの名無しさん [2010/02/01(月) 10:45:37 ]
ハロワの求人で、ASP型検索システムの調査研究って仕事があるんだが、全くわからんしパソコンの知識もあまりないのに応募してみてもいいものか…

一応経験資格不問、東京へ出張しての研修が2週間あるんだが

523 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 10:57:07 ]
迷わず逝け



524 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 13:58:42 ]
飛びつけ食いつけ食らい付け。 歯が折れても顎が外れても噛みつけ。
今の就職事情はそのぐらいだ。

525 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 15:39:41 ]
while(d<200){
printf("%d",s[200-d]);
d++;}
みたいな感じで配列の値を参照したんですが、0〜99番目の要素が参照できませんでした。
理由がサッパリ分かりません・・・誰か詳しい人、助けて…

526 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 15:44:22 ]
>>522
なんか公共事業っぽい香りがするなぁ。

某市のWebサイト構築事業の入札条件に
・予定費用の半分以上は人件費に使うこと
・当方指定の講習会に参加させること(東京で開催されるものを含む。複数回あり)
なんて項目があったのを思い出したよ。

労働条件や仕事内容に納得がいくなら、あとは
ガッツ(死語)を見せてアピールしなはれ。

527 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 16:09:34 ]
>>525
「参照できない」というのは具体的にどういうことが起きたの?
何事も無かったかのようにループが終了したのか、それともエラーが発生したのか。
あとループに入る直前のdの値と、s(配列?)の要素数をもう一度確認してみるとか。
キミの書いたコードは、回答するのに必要な最小限の情報のさらに半分くらいにしかなってないから、
それだけでは原因の特定は無理。

528 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 16:36:03 ]
>>525
エスパーが答える。
d<200でs[200-d]では要素0番目は参照されないよというのはおいといて。
おそらく
int d=0;
int s[200];
while(d<200){
s[d]=d;
printf("s[%d]=%d\n",d,s[200-d]);
d++;
}
こう言う事をしているんだろう。

s[0]=0 な。s[200]の値は? え?
s[1]=1 な。s[199]の値は? え?
...
s[100]=100な。s[100]の値は? 100
s[101]=99な。s[101]の値は? 99

529 名前:デフォルトの名無しさん [2010/02/01(月) 18:08:23 ]
c入門中です。
手始めにライフゲームを作っています。

cell[15][15]という2次元配列の中にセルの状態(生=1、死=0)を入れていきたいのですが、
可読性が悪いので、できれば

0,1,0,0,0,1,0,0,1,0,1,1,0,0,1,0
0,0,0,1,0,1,0,0,1,0,1,0,1,1,1,0
 :
 :
のような形でデータを入れたいのですが、どのようにすればいいでしょうか?

530 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 18:21:17 ]
初期化のときだけなら
int cell[15][15] = {
{ 0,1,0,0,0,1,0,0,1,0,1,1,0,0,1,0 },
{ 0,0,0,1,0,1,0,0,1,0,1,0,1,1,1,0 },
...............
};

531 名前:デフォルトの名無しさん [2010/02/01(月) 18:30:57 ]
>>530
あ、{の2重括弧で2次元配列の初期化出来るんですね。
ありがとうございました!

532 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 18:34:57 ]
複数のスレッドで特定の変数に同時アクセスすると正常に動作しないと聞いたのですが
www.kumei.ne.jp/c_lang/sdk/sdk_88.htmのサンプルでEnterCriticalSectionを消しても正常に動作しました

バグが発生するサンプル教えてくれませんか?

533 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 18:39:19 ]
>>532
CPUのコアはいくつ?
どうなると異常かはわかってる?
適当にSleepとかウェイト入れてみたら



534 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 18:44:28 ]
>>532
タイミング次第だから上手くいくこともある
簡単な例だとこんなのはどう

codepad.org/uT4vqEj9

535 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 19:00:46 ]
thx、バグ確認できました

g += 2; の流れは以下の認識おk?

gの値と取得
↓ ←ここで別スレッドのg代入が行われる
2足してgに代入 ↑の別スレッドの加算分が反映されない


536 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 19:03:30 ]
おk

537 名前:529 mailto:sage [2010/02/01(月) 19:06:12 ]
度々すみません。

>>530の方法で値を代入してみたのですが、
cell[x][y]とすると、左に90度寝た状態に代入されているようです。

ややこしいので、できれば代入時の0,1の並びと実際の表示を一致させたいのですが、
なにかいい方法はありますでしょうか?

538 名前:529 mailto:sage [2010/02/01(月) 19:07:15 ]
×左に90度
○右に90度
でした。訂正します。

539 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 19:09:56 ]
cell[y][x] にすればおk

540 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 19:13:01 ]
*CELL 及び CELLロゴは株式会社CELLの商標または登録商標です。

541 名前:529 [2010/02/01(月) 19:17:57 ]
>>539
やはりそれが一番手っ取り早いですかね?
まぁ、ライフゲームなら方向性関係ないし、いいのか…
ありがとうございました。

>>540
鳥山明逃げてー?w

542 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 20:29:21 ]
C/C++で二次元配列使う場合は[y][x]の並びにするのが普通じゃないかな
「方向性関係ないし」とあるが、問題になる場面が思いつかん

543 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 21:42:46 ]
お前の普通はみんなの異常



544 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 22:36:45 ]
連続したメモリアクセスの方が速いと言う事を知らないのかな。
素人さんなら知らなくてもOK。

545 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 22:51:22 ]
lifeの実装なら大して変わらないだろ
いまさら効率気にするようなもんでもないし

546 名前:デフォルトの名無しさん mailto:sage [2010/02/01(月) 23:24:23 ]
ビットマップ処理辺りで思考が進化終了してるオヂさんなんだろう

547 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 00:02:42 ]
どうせコンパイラが最適化してくれるよね

548 名前:デフォルトの名無しさん [2010/02/02(火) 00:20:34 ]
>>542
Fortranスレに行け

549 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 00:44:47 ]
>>547
たまによくこんな事思いつくなっていう
最適化してるの知るとちょっと嬉しい

550 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 00:56:52 ]
オレも[y][x]派だな
慣れるとこっちの方がイメージしやすい

551 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 01:31:35 ]
お前らが行列計算の経験が無い事はわかった。

552 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 01:40:44 ]
行列・・・m12って書いたら1行2列めだよな?

553 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 01:58:21 ]
Cで行列計算は大抵[y][x]だと思うが。



554 名前:デフォルトの名無しさん [2010/02/02(火) 04:18:19 ]
すみません,アルゴリズムはわかっているのですが,コードに落とし込めない問題にぶちあたっています.

555 名前:554 mailto:sage [2010/02/02(火) 04:19:26 ]
すみません,途中で送信されてしまいました.

アルゴリズムはわかっているのですが,コードに落とし込めない問題にぶちあたっています.
どこか,そういったものを質問できるスレはあったりしますか??

556 名前:554 mailto:sage [2010/02/02(火) 04:45:11 ]
こんばんは.失礼します.
現在,次のような課題に取り組んでいます.
もしよろしければこの難問をハックしていただけないでしょうか.
(できればCで・・・)

N個の要素があり,その,すべての組み合わせ(2^N組)に対して,
それぞれに値が決まっているものとします.
そして,ある組み合わせの値は,その組み合わせの中の部分集合の
どんな和よりも大きいです.

また0個の集合では値は0とします.

こうした場合に,全ての組み合わせの値を以上のルールに則ったまま
乱数を用いて決定したいと考えています.

具体的には
要素が一つの組み合わせは乱数.たとえばAのみの集合の場合 v(A)=random
要素が2つでは,v(A,B)=v(A)+v(B) + random
3つでは,v(A,B,C) = max(v(A,B)+v(C), v(B,C)+v(A), v(C,A)+v(B)) + random
となります.

この方式で,全ての組み合わせに値を当てはめることを考えているのですが
コードに落とし込むことが出来ません..


557 名前:554 mailto:sage [2010/02/02(火) 04:45:54 ]
今のところ,各組み合わせを以下のような二進数で表そうと考えています.(N=3の場合)
各行の一列目が1はAがその組み合わせにいることを意味し,
二列目はB,三列目はCを表しています.

ABC V
000 0
001 rc
010 rb
011 ?
100 ra
101 ?
110 ?
111 ?

558 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 05:10:05 ]
日本語か数式でおk

てかおまい理解してるのか気になる
組み合わせが2^N個っていう割に例題だと8つしかないぞ

559 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 05:48:38 ]
> N個の要素があり,その,すべての組み合わせ(2^N組)に対して,
> それぞれに値が決まっているものとします.
bool ary[N]={.,.,.....};
とかね。分かります。
>そして,ある組み合わせの値は,その組み合わせの中の部分集合の
>どんな和よりも大きいです.
うーん。
{1,1,0}の時に
{1,1,0}と{{1,1},{0}}ではどちらも和が2になる
>どんな和"より"も大きいです.
を満たすのは不可能だな
bool出なくとも負数を除けばいいだけなので同様。


> 具体的には
> 要素が一つの組み合わせは乱数.たとえばAのみの集合の場合 v(A)=random
> 要素が2つでは,v(A,B)=v(A)+v(B) + random
> 3つでは,v(A,B,C) = max(v(A,B)+v(C), v(B,C)+v(A), v(C,A)+v(B)) + random
> となります.
v()、randomの挙動。
=は左辺右辺は成り立つのか。
謎過ぎ。

アルゴリズムが分かっていれば
泥臭いものなら言語仕様など関係無しにその都度調べれば形が出来るものだし
少なくとも他人に伝わる説明は出来るはず。
分かってないんじゃないか?

560 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 12:27:42 ]
wget を製品の一部として販売したいのです (wgetの機能を製品の一部として使う)
そこでwgetを詳しく見るとGNU GENERAL PUBLIC LICENSE
があるのですが、英語なのでわかりません
わかる方回答くださいませんか?

561 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 12:32:50 ]
外部プログラムとして呼び出してる状態?

562 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 12:34:13 ]
>>560
日本語訳があります
www.opensource.jp/gpl/gpl.ja.html.euc-jp

563 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 12:35:46 ]
>>554-557
バグありそうだけど、こんな感じ?
行数制限で、出力部は省略したw

#include <stdio.h>
#include <stdlib.h>

#define max(a,b) ((a) > (b) ? (a) : (b))

int get_rand(int maxValue)
{
  return rand() * maxValue / RAND_MAX + 1;
}

main( int argc, char *argv[] )
{
  const int N = 3;
  const int count = 1 << N;
  int i,j,result[count];

  result[0] = 0;
  for(i = 1;i < count;i++) {
    int value = 0;
    for(j = 1;j <= i/2;j++) {
      if((i & j) == j)
        value = max(value,result[j]+result[i-j]);
    }
    result[i] = value + get_rand(10);
  }
}



564 名前:560 mailto:sage [2010/02/02(火) 12:43:46 ]
>>561
そうですね 外部プログラムとして呼び出す状態です

>>562
ありがとうございます
サーッと読ませてもらいましたが、そのソフトウェアについてだけしか
書かれておらず、今回のように、製品の一部として配布する場合が
書かれてない(読み取れてない)ので、助言をしてくれると助かります

565 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 13:00:22 ]
>>564
そこに書いてある事がすべて。後は自分の所の法務部に相談しなよ。

566 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 13:00:58 ]
GPLは金銭目的でプログラムの複製を販売することを許可していますか?
はい。GPLは、誰もが販売することを許可しています。複製を販売する権利 はフリーソフトウェアの定義の一部です。

と書かれてるので可能ですね

567 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 13:20:32 ]
>>564
wikipediaのGPLのページ見るといいよ
今回の場合は多分製品自体はGPLには成らないって考えでいいと思う

568 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 13:49:37 ]
wgetを含めて販売するのはいいとしても、wget自体はGPLなので、GPLに従った形で、
つまりwgetのソースコード (もしくはそれを提供すると約束する文書) と共に、製品に含める必要があると思われ
当然複製禁止だとか改変禁止だとかいったその製品自身のライセンスをGPLであるwgetに及ばせることはできないから、
製品に含まれるwgetを再配布する自由は認められなければならないし、wgetに対する改変も認められなければならない
まぁ実際やる奴はいないだろうけど

569 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 13:50:20 ]
適当なことぬかすな

570 名前:554 mailto:sage [2010/02/02(火) 14:29:28 ]
>>558 , >>559 , >>563

ありがとうございます!!
もすこし整理してみます..

571 名前:デフォルトの名無しさん [2010/02/02(火) 14:54:46 ]
522です

遅くなったけどレスくれた方々ありがとう
とりあえず書類提出しました

572 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 14:55:27 ]
フォームに数値を入力して、その内容から計算結果を出力する
というようなのを昔学校で作った記憶があるんですが
それは開発環境のソフト内でしか起動できませんでした。

フリーソフトのようにexeにして使うようにするには
何の言語、又はアプリを使えば可能なんでしょうか?



573 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 15:00:34 ]
パス



574 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 15:03:48 ]
パス2

575 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 15:11:39 ]
俺の独断と偏見によるオススメ順
Delphi
C#
Java
C
C++
VB

576 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 15:58:25 ]
RubyだろJK

577 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 16:58:23 ]
>>575
ありがとうございます。
C#でやることにしました。

578 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 17:16:54 ]
なんでやねん

579 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 17:17:52 ]
いや突っ込むような決断ではないと思うぞ。

580 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 17:41:59 ]
>>575
Delphiだけ浮いてるような気がする・・・
Windowsアプリ作りたいんならC#、次点でVBかな。

581 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 17:48:18 ]
D
はいらないのかJC

582 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 17:57:27 ]
Dは全体的に残念な感じなのがアレですから・・・^^;

583 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 20:03:56 ]
むしろその開発環境のソフトとやらが気になる
VBAか?



584 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 20:09:59 ]
VBAなどというソフトは存在しない

585 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 23:37:31 ]
Visual C++ 2008 Express Editionです。
Shift-JISのファイル名をUnicodeにmbstowcsで変換しようとすると、
「スタートメニュー」が「ベタートメニュー」になったり、
「デスクトップ」が「デベバトップ」になったりしてしまいます。
どうすれば正常に変換できますか?

586 名前:デフォルトの名無しさん mailto:sage [2010/02/02(火) 23:38:37 ]
>>549
MULをADDとSHLで置き換えたコードを書いたら最終的にMULに戻されたときには苦笑いだった。
コンパイラ的にはソッチの方が速いって判断なのね・・・

>>542>>543>>550>>553
コードの出所の文化次第じゃねーのかそんなん?もしくは>>544の言うように、処理に合わせて連続するように臨機応変にするか。
絶対的な正解はないと思うんだが。

>>568
バイナリ入手者がバイナリ提供者にソースを要求することができて、ソース譲渡は実費範囲のみで郵送、販売、ネット配布何でも良いってのが約束。
wgetならwgetの公式提供元のリンク叩きつけるだけでいいよ。自分で配布なんてする必要は一切ない。

>>576
572へのおすすめだから一般的な話をしても意味ない気が…
それにexe化ダルイだろJK

587 名前:585 mailto:sage [2010/02/03(水) 00:47:20 ]
setlocale(LC_ALL,"");
となっていたのを、
setlocale( LC_ALL, "Japanese_Japan.932" );
にしましたが改善されませんでした。。

デベバトップやベタートメニューで検索するとか意外性ソフトで同じような文字化けが起きるものがあるそうです。

588 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 01:39:49 ]
>>587
ユニコード変換とかロケール変換とか以前に、マルチバイト文字をマルチバイト文字として扱ってないのが問題。
デスクトップはShift-JISで83 66、83 58、83 4E、83 67、83 62、83 76となるが、この各第二バイトを一文字だけで見るとf、X、N、g、b、vになっている。
これを小文字へ変換するとf、x、n、g、b、vとなり当てはめると83 66、83 78、83 6E、83 67、83 62、83 76となり、これ即ち「デベハトップ」である。
逆に大文字にすると83 46、83 58、83 4E、83 47、83 42、83 56、これ即ち「ェスクエィシ」である。

どっかで小文字へ変換してるな貴様?


ちゃんとマルチバイトを扱いたいなら、ロケールをセットした上でisleadbyteや_ismbblead(VS系専用)でマルチバイト文字の先行バイトであるかを判定して、先行バイトに続く文字では処理を行わないなどの例外を設けましょう。
マルチバイト文字の第二バイトを単体で判定すると先行バイト判定される文字もあるので、先行バイトが来たらナニも言わず次の\0以外の文字を読み飛ばすとかの処理方法を使いましょう。

海外製でよくひっかかるのは、海外製ソフトでマルチバイトを考慮せず大文字小文字変換をカマスから。
同様に、マルチバイト文字の第二バイトで\が入るとパス区切り扱いされて泣くケースもある。
与えられた文字列の最後の\を消すとかの処理でも、ちゃんとマルチバイトか判定しましょう。

589 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 01:59:58 ]
ディレクトリ名の末尾に\が入るケース
「c:\hoge\fuga\hage表」
とかで死ねる

海外製ソフトだと常に最上位bitを0にして7bitにしてしまうものもある

590 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 02:29:24 ]
海外ネタだと、マルチバイト→Unicode変換を1バイトづつキャストするだけって素敵仕様の物もあるな。

とある超有名ソフトウェアにこのバグが潜んでいるのを見つけたときは心底ビビったよ。
その時からその会社のコードを信用していないんだが、案の定何度もセキュリティホールで騒ぎ起こしててなんともね…

591 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 09:20:11 ]
マイクロソフトとかいう会社か?

592 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 09:30:44 ]
VBを作成する際にGUIについて注意点とかまとめたサイトとかありませんか
タブインデックスの設定などもっと知りたいです。よろしくお願いします。

593 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 10:58:50 ]
VBを作るんですか?マイクロソフトにでも入らないと無理じゃない?



594 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 11:13:53 ]
失礼しました
「VBを作成する際に」→「VBでアプリケーションを作成する際に」
です

595 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 11:50:51 ]
どんなソフトのGUIかは分からんが、
大衆が使いそうなら大衆が既に使っているエクセル辺りを参考にすれば良い
パクリと言えばそうだが、無駄に使い勝手が変わるのはユーザーを無視しているとも言える
ゲームならそれこそ有名ソフトをパクれば良い
作っていくうちに色々コツがつかめて来るだろう

596 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 12:00:30 ]
同じエクセルでもバージョン変えるときに使い方まで変えてしまうMSは馬鹿ですねわかります

597 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 12:04:14 ]
>>588
これは凄いエスパー。「デベハトップ」でピン!とくるの?

598 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 12:23:02 ]
デベハトップでぐぐれば誰でも

599 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 12:27:34 ]
>>597
とりあえず「デベハトップ」をバイトコードにするのは常識
それをASCIIで見るとどうなるかっていうのも
2進エディタとかで見てるひとには常識だったりする

600 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 14:41:53 ]
「バイトコード」とか妙な用語を俺定義して使わないように

601 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 14:51:21 ]
バイトコードって中間言語の一種。
16進ダンプとかとはまったく関係ない

602 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 14:57:08 ]
2進エディタってテープに穴あけたりふさいだりするやつ?

603 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 15:00:04 ]
それはキーパンチャーじゃね?



604 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 15:02:41 ]
>>602
それはスプライサ。


605 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 17:35:46 ]
>>600-601
すまん
うっかり手が滑った

606 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 18:50:24 ]
>>591
Adobeだ。
極限定的な環境でUnicode変換用APIを呼ばずにそれをやらかすようになってた。
そもそも変換が必要になった理由からして終わってた。

607 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 18:53:17 ]
確かに、バイナリ(2進)エディタと言うけど、実際のところ16進(ヘキサデシマル)エディタだよな。

608 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 18:57:40 ]
16進はバイナリでいいだろ

609 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 20:40:06 ]
バイナリエディタは編集対象がバイナリファイルだからであって、
2進とか16進で表示するからバイナリエディタじゃあないだろう

610 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 20:53:03 ]
って〜ことは、テキストファイルはバイナリエディタの編集対象にならない
て〜こったな。

611 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 21:08:10 ]
テキストファイルはバイナリファイルに包含される。

612 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 21:57:22 ]
ということはテキストエディタもバイナリエディタの一種ということになる。

613 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 22:08:10 ]
テキストファイルの対義語はバイナリファイル。



614 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 23:14:33 ]
テキストファイルとは各行が改行コードで区切られたバイナリファイルです

615 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 23:23:57 ]
バイナリ
バイナラズ
ワルナリ

616 名前:デフォルトの名無しさん mailto:sage [2010/02/03(水) 23:49:19 ]
>>615
おまえ生きてる意味あるの?

617 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 00:16:42 ]
バイナリ
イタダキ
ナダコウ
リキウル

つまりバイナリファイルを頂く灘校卒業生はリキュールを飲むのだ!

618 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 00:33:18 ]
md5ソートマンドクセ
しょうがないからupperとlowerに分けてuint64にしてソートしていいよね

619 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 00:44:54 ]
hex文字列でソートする。

620 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 00:52:37 ]
>>613
バイナリファイルの対義語はアスキーファイル

621 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 00:59:52 ]
アスキーとはかぎらない

622 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 02:00:30 ]
テキストファイルと言ってもな
CRのみで改行されてたり
LFのみで改行されてたり
CR+LFで改行されてたり
どれかに決め打ちすることは出来ないんだぜ
バイナリーでいいだろ

623 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 02:02:34 ]
そうだね
SJIS だったり
EUC だったり
ISO-2022-JP だったり
UTF-8 だったり
BOM 付きだったり
およそアスキーファイルとは言い難いよね



624 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 07:50:41 ]
広義のバイナリファイルにはテキストファイルを含む
狭義のバイナリファイルには含まない
バイナリエディタは広義のバイナリの方
コレで良くね?

625 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 11:18:14 ]
そもそもアナログCPUじゃない時点でバイナリじゃないファイルってあるのか?

626 名前:デフォルトの名無しさん mailto:sage [2010/02/04(木) 13:25:18 ]
無理に引っ張らなくていいから

627 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 00:56:59 ]
>>626
いや>>625自体が「スレ立てるまでもない質問」じゃないか?

BASE64とか、意図としては2進数以外を想定してるファイルとか。

あとLaserDisk辺りの映像信号はアナログだけどデジタルで処理してる気がする。
ファイルと呼ぶべきかは微妙。

628 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 01:00:37 ]
無理に引っ張らなくていいから

629 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 05:47:19 ]
>BASE64とか、意図としては2進数以外を想定してるファイルとか。

BASE64だってバイナリだろ

>あとLaserDisk辺りの映像信号はアナログだけどデジタルで処理してる気がする。

ハードディスクの磁気だってアナログだ


630 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 08:39:39 ]
>>627
> BASE64とか、意図としては2進数以外を想定してるファイルとか。 
「テキスト以外を想定してるファイル」なら正しかったのに

631 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 09:04:22 ]
>>629
ハードディスクもMLC-SSDも、意図としてはデジタルデータじゃん。
LDの映像フォーマットはアナログNTSCとかその辺じゃなかったか?

632 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 10:06:52 ]
三次元Y/C分離ってデジタルでやってるんじゃないの?

633 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 11:18:03 ]
画質を向上させる手段なだけで規格的には必須じゃないんじゃ



634 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 18:12:44 ]
無理に引っ張らなくていいから

635 名前:デフォルトの名無しさん [2010/02/05(金) 19:27:43 ]
ゲームつくりたいんだがどの言語学べばいいかな。2Dも3Dもつくりたい
2Dはアイワナビーザガイみたいなので、3Dは地球防衛軍シリーズみたいなの

636 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 19:28:56 ]
HSPっていうのがいいらしいですよ
なんでも2DはGDIっていう最新のAPIが使えたり、3Dは3Dでディレクトエックスっていうのが使えるらしいですよ。

637 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:37:58 ]
2Dはアクションゲームルク−ル買って来い
3DはUnrealDevelopmentKit落として来いや

638 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:00:16 ]
>>632
ja.wikipedia.org/wiki/レーザーディスク
>映像はアナログ(ダイレクトFM)方式
ピッチ間隔がアナログ値として機能してるらしい。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<148KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef