スレ立てるまでもない質問はここで@ム板 103匹目 at TECH
[2ch|▼Menu]
1:デフォルトの名無しさん
09/12/30 18:04:14
質問する前にGoogleで検索しましょう。URLリンク(www.google.co.jp)<)


2:デフォルトの名無しさん
09/12/30 18:06:17
前スレを使い切ってから、このスレにてお願いします。

スレリンク(tech板)


3:デフォルトの名無しさん
09/12/30 18:50:43
                  .ノ′    } 〕    ,ノ           .゙'┬′   .,ノ
                  ノ      } ゙l、   」′           .,/′   .,ノ _,,y
    .,v─ーv_         〕      〕 .|  .il゙            《 ._   .,,l(ノ^ノ
   ,i(厂  _,,,从vy      .,i「      .》;ト-v,|l′          _,ノ゙|.ミ,.゙'=,/┴y/
   l  ,zll^゙″  ゙ミ    .ノ       .il|′アll!           .>‐〕 \ _><
   《 il|′     フーv,_ .,i″       ||}ーvrリ、             ¨'‐.`   {
    \《 ヽ     .゙li ._¨''ーv,,_     .》′  ゙゙ミ| ,r′                }
      \ ,゙r_    lア'    .゙⌒>-vzト    .ミノ′                 〕
       .゙'=ミ:┐  .「      ./ .^〃     :、_ リ                   .}
         ゙\ア'   .--  ,,ノ|    、    ゙ミ}                   :ト
           ゙^ー、,,,¨ -   ''¨.─   :!.,   リ                   ノ
              〔^ー-v、,,,_,:     i゙「   }                  .,l゙
              l!     .´゙フ'ーv .,y    ]                  '゙ミ
              |     ,/゙ .ミ;.´.‐    .]                   ミ,
              |     ノ′ ヽ      〔                   ミ
              }    }     ′    }                   {
              .|    .ミ     .<     〔                    〕
              .{     \,_   _》、    .{                    .}
              {      ¨^^¨′¨'ー-v-r《                    〔

4:デフォルトの名無しさん
09/12/30 19:48:36
>>1
死ね

5:デフォルトの名無しさん
09/12/30 22:21:14
>>1
早く削除依頼してこい。

6:デフォルトの名無しさん
10/01/04 15:54:30


7:デフォルトの名無しさん
10/01/05 21:57:19
何このキモいスレタイ

8:デフォルトの名無しさん
10/01/07 12:41:25
GPLに詳しい人いないの

9:デフォルトの名無しさん
10/01/07 13:35:29
待たせたな。

         _,rr-―''''¨゙゙゙ ̄ ̄ ̄ ̄ ̄`゙゙゙゙゙゙゙゙''ヘi、、   ,,,,-―---、
      ,r‐'″    ._,,,,             `'lri,!'''″     ゙l
     .,,,″    ,,r'"`  ゙゙l,               ゙ヘ,     |
     !アr,   .l°.ェ'ニ,コ .|                ゚ヘ、    |
       `'i、  .く_,、vr''″ .,                  ゙'i、 .,,/
         ゙X、        ト                   ゙!,゛    .,,r‐--、
   ,、_,、 .,,,,r‐'″        |                    } .,,r‐'^’   .|゜
   め゙゚“゙゙~゛           |                     ̄`     .,l゙
   |                ,i´                       ,l゙
   ゙!、                ,i´                       ,ノ
   .'┐              ,,-°  '=,,                   /`
    .゚!,          ,,,,r'″     ゙┐                 ,l゙
      ゚'r,    .''''"`         │    .,,-''i、          /
       `''x,      .|        |  .,,r'"  .゙┐           ,i´
         ~'ヘi,,,   |           |_,r・″    'ヘ,、         l゙
           `¬--|i,,,,,,,,,,,,,,,,v、r',广        ゙ヘ=@   ,l゙
                `゙'ーぃ--r'″           `'―、,,,,/

10:デフォルトの名無しさん
10/01/07 15:26:36
前スレ
>979 :デフォルトの名無しさん [] :2010/01/07(木) 11:58:47
>GPLのコードを自社サイトで開発しているソースコードに埋め込みたいのですが
>埋め込んだら最後、自社のコードもGPLに汚染され、
>無償公開しなければいけなくなってしまうと聞きました。
>この理解は正しいでしょうか?

GPLは無条件にソースの公開を求めるライセンスではありません。
「(バイナリの)再頒布」を行う場合に限り、「ソースの公開」が必要になります。
WEBサービスのためにGPLなコードを含むソフトウェアをサーバに設置するという行為は「再頒布」では無いので、
ソース公開の義務は発生しません。

販売する場合、販売した相手に対してソースを提供する手段を提供しなければGPL違反となります。
これを回避するためには
- GPLなコードを非GPLなコードに置き換える
- GPLなコードの著作権者と直接交渉し、非GPLな著作権契約を結ぶ
- GPLv2第3項に基づき、相手にソースコードを入手する手段を保証する
などが考えられます。

11:デフォルトの名無しさん
10/01/07 15:34:49
例えば以下の2行のソースコードがGPLだったら

$gplecho = "こんにちは";
echo $gplecho;

この場合は公開しないといけないけど
これを書き直して以下のようにすれば

$konnitiwa = "こんにちは";
print $konnitiwa;

公開しなくてもいいってこと?

12:デフォルトの名無しさん
10/01/07 15:44:16
>>11
そんな質問して楽しいの?

13:デフォルトの名無しさん
10/01/07 15:47:49
答えられないなら黙ってていいんだよ

14:デフォルトの名無しさん
10/01/07 15:51:27
公開しなくていいよ

15:デフォルトの名無しさん
10/01/07 16:01:52
>>11
「改変」だと「二次著作物」だから、GPLが適用されますが
「参考にして自分で書いた」のなら、それは貴方のオリジナル、つまりGPLなコードとは別途の著作物なので
参考にしたコードのライセンス的な影響は受けないと考えます。

しかし、著作権がベースになっているので、
「参考」か「改変」かの判断にはどうしても主観的な判断が入ります。
最終的には裁判官の(主観的な)判断にゆだねられるでしょう。
(パクリではなくても似たようなコードがあれば疑いをかけられる可能性はあるわけなので、
 リスク管理として腕の良い弁護士でも抱えておくと安心です。その時はぜひ当社に(キリッ))

>>11の具体例に関して言うなら、
ありきたりすぎて「創作的な表現」とはいえないので「著作権」を主張できない→GPLが無効と考えます。

16:デフォルトの名無しさん
10/01/07 16:02:18
>>13 くだらない煽りしかできないなら黙ってたほうがいいよ

17:デフォルトの名無しさん
10/01/07 16:19:00
>>11
GPLなコードの流用、改変部分だけ動的リンクにしてコードを公開し、
それ以外の部分は非公開にすれば、多分大丈夫だよ。
まだ判例が出ていないので、「多分大丈夫」としか言えないが、
「多分大丈夫」という事で世間は動いているようだ。

Wikipedia項目リンク


18:デフォルトの名無しさん
10/01/07 16:52:26
たとえばSI屋が受託開発で顧客にのみバイナリを納品するような場合、
GPLライセンス下で公開されているソフトウェアを利用してプログラムを作っても、
顧客以外にはソースコードの開示義務は発生しないってことで良いのか。

19:デフォルトの名無しさん
10/01/07 16:59:21
顧客以外の誰に公開する義務が発生すると思うんだろう?

20:デフォルトの名無しさん
10/01/07 17:02:53
知らなかったことにすればおk
総理や幹事長もやってることだし

21:デフォルトの名無しさん
10/01/07 17:14:12
>>19
もちろん、通りすがりの知らない人

22:デフォルトの名無しさん
10/01/07 17:40:52
>>11
それで良い。ソースはrms。
UNIPRESSからGNU emacsはgoslingのコピペと言われて、それと同じ事をやった。

23:デフォルトの名無しさん
10/01/07 18:27:05
>>21
通りすがりの知らない人が、どうやって受託開発されたシステムを知ることができるのだろうか。

24:デフォルトの名無しさん
10/01/07 18:59:14
これか
URLリンク(builder.japan.zdnet.com)
ビデオ:Gosling氏いわく「Emacsを使うのはやめようよ」


25:デフォルトの名無しさん
10/01/07 19:32:11
BCCでDLLを作ることは可能でしょうか?
BCCは何か制限がありますでしょうか?
目的は秀丸エディタで利用するDLLです

26:デフォルトの名無しさん
10/01/07 19:34:18
聞いてる暇があったら自分で動け

27:デフォルトの名無しさん
10/01/07 19:43:47
>>18
ただし、それだと顧客はそのソースとバイナリを他の第三者に公開する自由を得ることになるな。
よく製品にあるような「リバースエンジニアリングの禁止」とか「再頒布の禁止」を強制できなくなる。

28:デフォルトの名無しさん
10/01/07 19:58:39
開発業務ではGPLは色々うざいからなー
Apache License 2.0 とか修正BSDライセンスとかで公開されてるものを流用・改変したりする方が楽

29:デフォルトの名無しさん
10/01/07 20:07:59
gccだとvc++用のdllにリンクできないとかいうのがあったな
ABIの互換性が無いんだと

30:デフォルトの名無しさん
10/01/07 20:37:27
>>29さんありがとうございます

>>26
氏ね


31:デフォルトの名無しさん
10/01/07 20:49:45
動的配列を開放する前にプログラムを強制終了するとどうなるの?
例えば下のプログラムで delete する前に強制終了すると、メモリは開放されないの?

int main(int argc, char *argv[]){
  int *a = new int[1000000000];
  for(int i = 0; i < 1000000000; ++i){  /* このループ中に Ctrl + C を押したり */
    処理
  }
  delete [] a;
  return 0;
}

32:デフォルトの名無しさん
10/01/07 20:54:46
されるよ

33:デフォルトの名無しさん
10/01/07 20:59:41
普通はOS(またはそれに準ずるもの)が解放する。

34:デフォルトの名無しさん
10/01/07 21:20:41
>>32-33
ありがとう♥

35:デフォルトの名無しさん
10/01/08 01:46:37
私女だけど、VB2008はどこで質問していいかわからないのでここに書きこみます><
下記を実行すると、うまく解放されずに、プロセスにExcel.exeが残ってしまいます。
グーグル先生を酷使しましたが分かりません><濡れそうです><助けてください><

Dim xlApp As New Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet

Dim MyPath As String '実行ファイルのパス取得
MyPath = Application.StartupPath
Dim DummyXLS As String 'ファイルフルパス
DummyXLS = MyPath & "\あ.xls"

xlBook = xlApp.Workbooks.Open(Filename:=DummyXLS) 'EXCELを開く
xlSheet = xlBook.Worksheets("あああ") 'Worksheet設定
xlApp.Visible = False

    =ごにょごにょ処理=    ←空白で実行しています><

Marshal.ReleaseComObject(xlSheet)

xlApp.DisplayAlerts = False
xlBook.Close(SaveChanges:=False)
xlApp.DisplayAlerts = False
xlApp.Quit()

Marshal.ReleaseComObject(xlBook)
Marshal.ReleaseComObject(xlApp)

xlSheet = Nothing
xlBook = Nothing
xlApp = Nothing //終わり。

36:デフォルトの名無しさん
10/01/08 02:04:45
>>35
よくわからないけど、このへんとか
URLリンク(blogs.timberlandchapel.com)

37:デフォルトの名無しさん
10/01/08 09:18:46
>>35
何歳ですか?
どこ住んでますか?
彼氏は?

38:デフォルトの名無しさん
10/01/08 09:22:57
童貞うざい

39:35
10/01/08 11:20:14
Dim xlApp As New Excel.Application
Dim xlBooks As Excel.Workbooks = xlApp.Workbooks
◆Dim xlBook As Excel.Workbook

xlApp.Visible = False
◆xlBook = xlBooks.Open(あああ.xls)     'あああ.xlsを開く

xlApp.DisplayAlerts = False
◆xlBook.Close(False)               'xlBook を閉じる

Marshal.ReleaseComObject(xlBooks)    'xlBooks の解放
◆Marshal.ReleaseComObject(xlBook)     'xlBook の解放

xlApp.Quit() 'xlApp を閉じる
Marshal.ReleaseComObject(xlApp)      'xlApp を解放

xlBooks = Nothing
◆xlBook = Nothing
xlApp = Nothing

xlBookを指定せずに(◆の行)を実行するとうまく解放されますが、
「あああ.xls」を開く処理(◆)を実行すると解放されません><
どうすればいいですか><束縛は嫌です><解放して下さい><助けてください><

>>36
ありがとう><

>>37
><

40:35
10/01/08 11:25:34
あ、あ.xlsにマクロが入ってるんだった。。。ごめんなさい><

41:デフォルトの名無しさん
10/01/08 11:36:14
猫でもわかるのサイトよりももっともっと入門者向けのサイトってありませんか?


42:デフォルトの名無しさん
10/01/08 11:40:12
これでどう?
URLリンク(tinyurl.com)

43:デフォルトの名無しさん
10/01/08 11:40:38
PGの習性として「<」は「>」と対なので「><」として使われると、
とても見にくいです。

44:デフォルトの名無しさん
10/01/08 11:41:42
猫でもが最高

45:デフォルトの名無しさん
10/01/08 11:54:03
>ω<

46:デフォルトの名無しさん
10/01/08 12:56:38
>>42
すいません、教えていただいたサイトを見たのですがyahooに飛ばされました

47:デフォルトの名無しさん
10/01/08 13:04:20
>>46
それであってるよ。そこの、学習の辺りで先ずは国語と算数を勉強すればいいよ。

48:デフォルトの名無しさん
10/01/08 13:08:18
C#かpythonで簡単にソフトを作れるほうを勉強したいと思ってます
C#でソフト作るのとpythonでソフト作るのはどちらが簡単ですか?

49:デフォルトの名無しさん
10/01/08 13:08:50
>>47
つ板名読めないおっさん乙

50:デフォルトの名無しさん
10/01/08 13:09:05
C言語を学習した流れでC++へ移行したけど
windowsアプリオンリーならC#の方がよかったかな・・・

51:デフォルトの名無しさん
10/01/08 13:37:48
>>48
何を作るかによりけりだから、まずは作る物を明確にしろ。

52:デフォルトの名無しさん
10/01/08 13:39:17
>>48
作るソフトのジャンルに寄って変わる。

>>50
ゲームならC++で良いと思うが一般のウィンドウズアプリケーションならC#だな。

53:デフォルトの名無しさん
10/01/08 13:54:05
ありがとうございます
作りたいのはTODOソフトです
この場合はどの言語がよろしいでしょうか?

54:デフォルトの名無しさん
10/01/08 14:08:13
C#,pythonより先に英語。

55:デフォルトの名無しさん
10/01/08 14:08:44
>>53
WindowsアプリケーションならC#.Net。
WebアプリケーションならPHP、Python、Rubyあたりかな。

56:デフォルトの名無しさん
10/01/08 14:18:13
>>41
言語は何?

57:デフォルトの名無しさん
10/01/08 14:25:26
>>56
Cです

58:デフォルトの名無しさん
10/01/08 14:50:25
>>57
URLリンク(homepage3.nifty.com)
URLリンク(www.geocities.jp)
ここは見てみた?

あと入門サイトよりも書籍の方が勉強し易いかもしれない。
URLリンク(www3.ank.co.jp)

それでも理解できなかったら他のもっと簡単な言語をやってみるとか。
それすら駄目だったら猫以下の知能だったということなので諦めて下さい。

59:デフォルトの名無しさん
10/01/08 14:59:28
ぼくのねこに猫でも分かるサイトを見せたら
難しくてにゃ〜にゃ〜と言って逃げて言ったよ
ねこでも分かんないじゃん詐欺だね

60:デフォルトの名無しさん
10/01/08 17:51:59
きっと火星猫になら判るんですよ

61:デフォルトの名無しさん
10/01/08 20:43:19
すいません、どなたかこのテキストエディタを日本語対応にしていただけませんか?
URLリンク(www.moongift.jp)

もしおりましたらソフトウェア板に専用スレ立てます

62:デフォルトの名無しさん
10/01/08 21:28:15
Fortran の後継言語として Sun が開発中だった Fortress は
今はどうなってるんでしょうか? お蔵入りなのでしょうか?


63:デフォルトの名無しさん
10/01/09 01:58:50
>>60
ぷいにゅ〜

64:デフォルトの名無しさん
10/01/09 13:25:48
>>61
少なくともutf-8はそのうち実装されるんでないの

65:デフォルトの名無しさん
10/01/09 18:02:54
viかなんかのエディタにomni補完というものがありますが
これがどのような仕組みなのか勉強したいのでソースコードを落とせるurlご存知の方がらっしゃいましたら教えてください

66:デフォルトの名無しさん
10/01/09 18:11:36
URLリンク(sourceforge.net)

67:デフォルトの名無しさん
10/01/09 23:58:33
30才からC++を覚えたら仕事に繋がりますか?

68:デフォルトの名無しさん
10/01/10 00:00:54
30歳でPGかよ

69:デフォルトの名無しさん
10/01/10 00:17:36
>>67
こういう本を書く仕事に繋がるかもしれない。

URLリンク(www.amazon.co.jp)

70:デフォルトの名無しさん
10/01/10 01:02:07
レビューがいいな。
| この本を読んでピアノが弾けるようには絶対になりません。

71:デフォルトの名無しさん
10/01/10 11:53:51
30歳とか40歳とかより、もっと重要なことがあるな。

理論物理化学研究者の保木邦仁氏は、本業の片手間で
最強の将棋ソフト「ボナンザ」を作ってしまった。

頭のいい人は、何でもできるんだから、心配しなくてもいいんじゃないの。
「頭のいい人」ならばな。


72:デフォルトの名無しさん
10/01/10 12:02:27
ありがとう、安心しました

73:デフォルトの名無しさん
10/01/10 12:53:06
PC88全盛期の頃は、30からプログラムやってメーカー作ったのがザラ

74:デフォルトの名無しさん
10/01/10 17:56:14
あるクラスHogeが機能A・機能B・機能C・・・を所持しています
(ほかにも機能クラスがあって、どういう機能を幾つ持つかはHogeの派生系で決定される)

このHoge系統のクラスが所持している機能クラスの項目名とその値を描画したいのですが
・描画クラスに機能の値を渡す方法を考える

・HogeにDraw()を追加して描画クラスとHogeを関連付けて、描画したいタイミングで描画クラスにhoge->Draw()させる

どちら設計の方がよいでしょうか?

75:デフォルトの名無しさん
10/01/10 18:12:15
Hogeにはモデルの役割に徹してもらって、描画に必要な情報を取得するためのget関数を用意する
新しくHogeView、HogeRenderer、HogePresenter等名前は何でもいいがビュークラスを作り、
get関数でHogeから情報を取得し、描画してもらう
後で表示内容を変えたくなってもHogeをいじらずにHogeViewVersion2とかを作れば済むし、
2つのビューをいつでも切り替えられるようにもなる

76:デフォルトの名無しさん
10/01/10 19:59:21
やはりそっちの方が責務という点では無難ですよね

ただ、そうすると機能の種類も数も変化する部分を
Get関数でどういう形で値を渡すのか、という問題が・・・

HogeViwe派生が常に1つのHoge派生を表示するようにして、
struct HogeVaをつくってその派生を渡してダウンキャストすればいいでしょうか

ただ、ダウンキャストしなくてもよい方法があった方がいいと思いますが・・・

77:デフォルトの名無しさん
10/01/10 20:30:17
エクスプローラ上で独自フォーマットの画像を表示できるようにしたいのですが、
どのようにすればよいのでしょうか?
参考になるサイトや書籍を教えていただけるだけでもありがたいです。


78:デフォルトの名無しさん
10/01/10 21:17:47
↓こんなのを作りたい、ってこと?
URLリンク(www.vector.co.jp)

79:77
10/01/10 21:46:02
>>78
はい。


80:デフォルトの名無しさん
10/01/10 21:51:55
エクスプローラってのは、ListViewコントロールのことかい
え、それもわからない?
だったら、独自フォーマットの前に、普通の画像フォーマットでサムネイルを出せるようになりな

81:78
10/01/10 21:55:33
「IExtractImage」でググるよろし。

82:77
10/01/10 22:01:48
>>80
やりたいことはListViewコントロールそのままなのですが、
独自アプリではなく、エクスプローラを拡張するような形にしたいのです。



83:77
10/01/10 22:05:25
>>81
検索したところ、まさにやりたいことそのままでした。
とても助かりました。
ありがとうございました。


84:デフォルトの名無しさん
10/01/11 10:07:53
#include <stdio.h>
void main() {
print "Hello World"
}


この4行のコードにも著作権が発生しますか?
これを私が著作権を主張したら通りますか?

85:デフォルトの名無しさん
10/01/11 10:09:41
釣りは楽しいですか?

86:デフォルトの名無しさん
10/01/11 10:15:42
釣りでも何でもいいのでご回答おねがいします

87:デフォルトの名無しさん
10/01/11 10:37:16
K&R本の劣化コピペなので通りません。
エラーの無いソースを書けるようになってから出直しなさい。

88:84
10/01/11 10:40:34
ではこれではどうですか?

#include <stdio.h>

int main(void){

printf("Content-type: text/plain\n\n");
printf("Hello, World!");

return 0;

}

89:デフォルトの名無しさん
10/01/11 10:50:57
それは「創作的」に表現されていますか?

90:84
10/01/11 10:55:39
スレリンク(tech板)
ここのスレでの話だとたとえ1行でも著作権が発生するらしいのですが

91:デフォルトの名無しさん
10/01/11 11:04:34
行数の問題では無くて、多くの人が(最終的には裁判官)認める「創作性」の有無。

92:デフォルトの名無しさん
10/01/11 11:06:31
どっかで見たソースを思い出して書いてるなら創作でも何でもないなw

93:デフォルトの名無しさん
10/01/11 11:32:49
出力している内容に関して
・Content-type: text/plain
プロトコルからのコピペで創作性は皆無。
・Hello, World!
K&Rからのコピペで、むしろ著作権侵害。

コーディングに関して
教科書のコピペで創作性皆無。 むしろ著作権侵害。

94:デフォルトの名無しさん
10/01/11 11:35:13
改行が \r\n でないのが創作性だな

95:デフォルトの名無しさん
10/01/11 11:44:06
こんなんで著作権有効になるか?

96:デフォルトの名無しさん
10/01/11 11:45:42
有効だと仮定すると、元著作物に対する著作権侵害。

97:デフォルトの名無しさん
10/01/11 12:15:45
>>94
\n\nは合ってるよ。CGI なら

>>88
hello world だけの Cソースだろうと著作権を持つことは出来る。
でも、だからどうしたって話。特許かなにかと間違えてないか?

98:デフォルトの名無しさん
10/01/11 12:38:38
> \n\nは合ってるよ。CGI なら

それは httpd が面倒を見てくれるから、って意味で?

99:デフォルトの名無しさん
10/01/11 12:50:12
>>98
空行が、ヘッダとボディのデリミタだから

100:デフォルトの名無しさん
10/01/11 12:51:36
本来なら \r\n\r\nだけどな

101:デフォルトの名無しさん
10/01/11 13:16:29
>>99
RFC 2616 のどこかに、行末が LF だけでいいとあるんですか?

102:デフォルトの名無しさん
10/01/11 15:53:12
テキストでの出力の場合は、文字列リテラルの中で
\n
だけで CR + LF または CR または LF になるんじゃなかったっけ?
バイナリでの出力の場合、文字列リテラルの中で
\r\n
とやらないと CR + LF にはならないのは確か。

103:デフォルトの名無しさん
10/01/11 15:54:10
>>101
CGI/1.1 では許容されている。

104:デフォルトの名無しさん
10/01/11 16:18:09
RFC 3875 か

105:デフォルトの名無しさん
10/01/12 19:40:15
にこ動みたいなタグ付きのデータを扱おうとしてるのですが、
タグつきデータを表現するのに
リスト構造以外でいいデータ構造ってありますか?

・できればデータに対してタグは後から追加できるようにしたい
・追加/削除よりは検索を早くしたい

106:デフォルトの名無しさん
10/01/12 21:37:36
Listがだめならハッシュ位しかないようなきがするけど。
あんまり詳しくないけど、SQL使うとか??

107:デフォルトの名無しさん
10/01/12 21:39:54
Listとハッシュしか知らない… perl脳

108:デフォルトの名無しさん
10/01/12 21:50:03
ハッシュテーブルでいいと思うよ
もしタグの順番にも意味があるんならマズイけど

109:デフォルトの名無しさん
10/01/12 22:10:41
>>107
残念。俺は偏ったC++脳だ。ククク。
それ以外だと、N分木っていう手もあるかもね。性能は、あんま使わないからシラネ。

110:デフォルトの名無しさん
10/01/12 22:15:05
>>105
最初からPrologにする。

111:デフォルトの名無しさん
10/01/12 22:21:16
確立されてるデータ構造でしか検討しない

112:デフォルトの名無しさん
10/01/12 23:27:38
105です
なるほど、ハッシュは思いつかなかったです
自分の認識間違いでなければ

方針@データ側にタグをリストでつなぐやり方
 検索時はO(データ数×データにつながれているタグ数)
方針Aタグ側にデータをつなぐやり方
 チェイン法によるハッシュ探索。検索時はO(タグにつながれているデータ数)

Aのほうは、データ側から自分に何のタグが付いているかは関知しない
っていうトレードオフになるのかな
タグから検索が圧倒的に多いだろうからこれが良さそうですね
みなさんありがとうございました

113:デフォルトの名無しさん
10/01/12 23:59:05
よほどメモリーが少なくないのなら、両方持てばいいじゃん。

114:デフォルトの名無しさん
10/01/13 04:07:27
データベースでよくね

115:デフォルトの名無しさん
10/01/13 07:39:49
質問です
100〜200ほどの数値が渡されてきて、そのうち上位10の数値だけ保持したいのですが、
そのような場合、データはどのように持つのが良いんでしょうか?
現在配列に大きい順に10個整列させて値を保持して、新しい値が来るたびに挿入ソートしていますが、
木構造かリスト構造にすると、もっと高速化できるでしょうか?

116:デフォルトの名無しさん
10/01/13 08:48:28
保持するのが10個で、MAX200ならどんなデータ構造つかっても差はでない。
悩む価値はない。禿げるぞ。
もっと大きくなってきたら、検索コストと更新コストのバランスで決める。

117:デフォルトの名無しさん
10/01/13 11:43:14
ヒープソートを使うのも面白いかもしれない
性能はシラネ
10個くらいならシンプルなアルゴリズムの方がいい
下手に凝るとオーバーヘッドが増える

118:デフォルトの名無しさん
10/01/13 19:20:38
115です
説明不足でした 115に書いた処理の速度を上げて、
繰り返し実行する部分に組み込みたいのです
(回数が増えるほど精度が上がるので、できるだけ繰り返し回数を増やしたい)
>117
ヒープソート、というか木構造をよく理解できてないのですが、
ざっと見た感じ挿入ソートよりも比較回数、入れ替え回数ともに少なそうですよね
勉強してやってみます

119:デフォルトの名無しさん
10/01/13 19:32:29
>>115
数値はどういう数値?
整数?実数?範囲は?分布に特徴はある?

120:デフォルトの名無しさん
10/01/13 21:11:20
バイナリサーチ+挿入で O(log n)。

121:デフォルトの名無しさん
10/01/13 22:19:27
データ数が少ないO()では判断できない。

122:デフォルトの名無しさん
10/01/14 02:13:33
(1)挿入ソート
(2)10位と比較してそれより大きければ挿入ソート

何個目かで(1)から(2)に切り替える。
何個で切り替えるかは処理時間が最も短くなるように予め計算して決める。

123:デフォルトの名無しさん
10/01/14 22:47:55
混乱したわ!

Unicodeはワイド文字だとか2バイトだとかってよく言うけど
実際2バイトじゃないじゃないの
でも問題はそこじゃないわ

Shift-JISと同列に語るなら、UnicodeじゃなくてUTF-8とかUTF-16なんかの
エンコード名で説明するのが筋ってもんでしょう?
Windowsでワイド文字っていったら2バイト固定だそうだけど
UTF-8もUTF-16もUTF-32も・・全部2バイト固定のフゴーカホーシキじゃないじゃない!
Unicode、というかUCS-2っていうのは文字セットじゃなく文字コードなの?

どういうことなのか、説明して!

124:デフォルトの名無しさん
10/01/14 23:05:12
UTF-XもUCS-Xも全部Unicodeだが、いったい何を言っているんだ?


125:デフォルトの名無しさん
10/01/14 23:39:17
わかりにくくてすみません
UCS2もUnicodeといえばUnicodeなんだろうしそれには同意するけど
UCS-2を元にして符号化したのがUTF-8やUTF-16でしょ?

対応させればこんな感じ
 文字セット -> 符号化方式
 UCS2 -> UTF8やUTF16
 JISX0208  -> ShiftJISやEUC

UCS2とUTF8をごっちゃにするのは
ShiftJISもEUCもごっちゃに語ってるような違和感を覚えませんか

プログラミングする際に必要なのは具体的なフゴーカホーシキのほうだと思うんだけど
なんで曖昧なUnicodeっていう呼称を使うのか不思議に思ったわけですよ
文字セットはUCS2だから。とだけいわれても、UTF-8なのかUTF-16なのかわからんじゃない?
それともUnicodeやUCS2っていうのも立派な符号化方式の一種なの?
っていうのが今回の疑問なのです

126:デフォルトの名無しさん
10/01/15 00:07:27
そりゃ分かってない香具師を煙に巻くために適当に言い方変えてるだけだからジャマイカ

127:デフォルトの名無しさん
10/01/15 01:58:13
>>125
いやむしろUCS-2やUCS-4もUTF-8/16/32と並ぶ符号化方式の一種だと思ったほうがいいかもしれない。
文字セットであるのはUnicodeあるいはISO/IEC 10646 Universal Multiple-Octet Coded Character Setとして。

ちなみに、Microsoftなど古くからUnicodeを採用しているところでは、
名残でUnicodeという言葉をUCS-2やUTF-16、すなわち符号化としても用いていることに注意。
Unicodeの符号化方式が今で言うUCS-2しかなかった頃はそれで良かったのだが。

128:デフォルトの名無しさん
10/01/15 02:57:09
2バイト固定だと思い込んでいたことによる混乱を他人にぶつけるよりも
Unicodeが複数あることについて不満をぶつけたらどうだい?
なんでいまさら?といわれるだろうけど

129:デフォルトの名無しさん
10/01/15 08:16:46
てか、こんなスレがあったのね
なんとなくわかってきたカモ
スレリンク(tech板)

>>126の言うようにUnicodeと言って符号化方式をさしているケースもあると理解するのが良さそうね
Microsoftが「UTF-16LEのことをUnicodeと呼ぶ」から・・

でも、それもたぶん歴史的には仕方ない、というのか
Unicodeができた当初は2バイト固定の文字しかなかったし
UCSとかが出来たのはその後みたい
その時の符号化方式のことをUnicodeと呼んでいるわけだから
UTF-16LEと認識してしまうのはおそらく正確じゃなくて
そのうちのサロゲートペアとかを使わない部分っていう認識のほうが良いのかな
現在はVistaでその辺も対応したと。
まぁ、UTF-16LE自体がサロゲートペアに対応していない時代があったのかもしれない

結局Windowsを使ってる限り
UnicodeやUCS-2と呼んでいるやつの正体は実質ほとんどがUTF-16LEで
UTF-16LEの「よく使われてる部分」は2バイト固定ってこと、かな
間違ってたらすまぬ

130:デフォルトの名無しさん
10/01/15 08:17:56
>>128
C++を使ってる私には・・

131:デフォルトの名無しさん
10/01/15 20:50:34
ある1つのファイルのハッシュ値を複数回計測すると
3回に1回くらい異なる値になるのですが原因として何が考えられるでしょうか?
ファイルが上書きされた形跡はありません

132:デフォルトの名無しさん
10/01/15 21:03:07
[可能性の一番高い物]
ファイルのハッシュ値を複数回計測するプログラムのバグです。
[あるかもしれないかもしれない]
あなたの使っているハードのトラブルです。
[99.99999999999999%あり得ない物]
あなたの使っているOSかドライバーのバグです。

133:デフォルトの名無しさん
10/01/15 21:47:58
>>131 が宇宙線の被曝の多いところにいるのなら、ソフトエラーがかもしれない

134:デフォルトの名無しさん
10/01/15 22:40:09
ファイルを読んでメモリに保存するところで、メモリを初期化しないまま読み込んで
不定値となっているところもハッシュ計算の範囲に含めてるとか。

135:デフォルトの名無しさん
10/01/15 22:43:53
昔、できのわるいFLASHをつかったときによくREADをミスられたな

136:131
10/01/15 23:17:14
回答ありがとうございます
比較的大きなファイルのみで起こるのでハードのトラブルが濃厚かもしれません
他の機器で試してみることにします
ありがとうございました

137:デフォルトの名無しさん
10/01/15 23:19:27
>>131
読み込んだバッファサイズを超えて計算してない?
メモリ上のゴミが計算に含まれてるのかもよ。

138:デフォルトの名無しさん
10/01/16 12:14:16
forループの中に宣言を書くのって、はしたないですかね?
何回も宣言の部分通っちゃうわけですし。

int temp;
for(i=0; i<10; i++){

}

みたいに宣言だけ外で行うべきですか?
tempはループの中でだけ使う変数の場合もそうするのが良いのでしょうか?

139:デフォルトの名無しさん
10/01/16 12:23:50
ループのイテレーションにまたがって生存してる必要がないなら中で宣言すべき。

字面通りに追いかけて動いてる大昔のインタプリタじゃあるまいし、
それで性能が落ちたりはしない。

140:デフォルトの名無しさん
10/01/16 12:57:49
>>138
環境に依存しないので外の方がいい

141:デフォルトの名無しさん
10/01/16 13:14:56
>>138
今どきのコンパイラなら性能はまず間違いなく変わらない。
スコープを狭める意味で中で書けるなら中で書いた方がよい。

142:デフォルトの名無しさん
10/01/16 13:29:48
>>138
環境に依存なんてしないので、中に書くべき。


143:デフォルトの名無しさん
10/01/16 14:06:16
例えば、
#define BUFSIZE (1024 * 1024 * 10)

{
char buff[BUFSIZE];
....
}

{
char buff[BUFSIZE];
....
}
なんてのは、もしかしたらコンパイラがバカかもしれないとおもうと
char buff[BUFSIZE];
{
....
}

{
....
}
って書きたくなるな。

144:デフォルトの名無しさん
10/01/16 14:14:07
/* OK */
int temp;
for(i=0; i<10; i++){

}

/* OK */
for(i=0,int temp; i<10; i++){

}

/* NG */
for(i=0; i<10; i++){
 int temp;

}

/* OK */
{
 int temp;
 for(i=0; i<10; i++){

 }
}

145:デフォルトの名無しさん
10/01/16 14:44:00
URLリンク(hamamuratakuo.blog61.fc2.com)

誕生日から年齢を計算する方法として、上記ページを参考にしてC#で書いてみました。
(今日の日付 - 誕生日) / 10000 という計算式なのですが、どうしてこういう計算式で
年齢が算出できるんでしょうか?
参考にした上記ページに「言われてみれば当たり前」と書いてあったのですがわかりません

どなたか解説して頂けないでしょうか?

146:デフォルトの名無しさん
10/01/16 14:51:07
その「今日の日付」とか「誕生日」を、
20100116 とか 19870605 という整数で表す、ということはわかってる?

147:デフォルトの名無しさん
10/01/16 15:37:48
日付を表す数値=年*10000+月*100+日
とすると、
今日の日付を表す数値A=年A*10000+月A*100+日A
誕生日の日付を表す数値B=年B*10000+月B*100+日B

今日の日付を表す数値A−誕生日の日付を表す数値B = (年A−年B)*10000+(月A−月B)*100+(日A−日B)

今日の日付がその年の誕生日より前であれば、(月A−月B)*100+(日A−日B)<0
今日の日付がその年の誕生日以後であれば、(月A−月B)*100+(日A−日B)>=0

|(月A-月B)*100+(日A-日B)|<10000 であり、かつ、整数の除算は切り捨てであるので

今日の日付を表す数値A-誕生日の日付を表す数値B/10000
=(年A-年B)−1 (今日の日付がその年の誕生日より前)
=(年A-年B) (今日の日付がその年の誕生日以後)

即ち、
今日の日付を表す数値A-誕生日の日付を表す数値B/10000=年齢

148:デフォルトの名無しさん
10/01/16 16:55:14
90%以上うまく動きそうだけど
特定の条件で間違った答え出しそうなとき
反例見つける良い方法はないかな

149:デフォルトの名無しさん
10/01/16 17:30:26
・紀元前生まれ
・10000年以降
・1年が100月以上になる
・ひと月が100日以上になる

これ以外問題ない。

150:デフォルトの名無しさん
10/01/16 17:35:37
プログラミングの問題ではないんだが・・・
調べてもよく理解できなかったので、助けてください・・・


オブジェクト指向言語の特徴について、以下のキーワードを用いて述べよ。

クラス、インスタンス、オブジェクト

151:デフォルトの名無しさん
10/01/16 17:59:30
一年が365日で西暦カウントするようになったのは近三百年くらいだから
細かい事はいいんだよ

152:デフォルトの名無しさん
10/01/16 18:03:52
「オブジェクト,クラス,インスタンスの関係」

URLリンク(itpro.nikkeibp.co.jp)


153:デフォルトの名無しさん
10/01/16 19:01:12
質問させてください

Visual c++ 2008でデバッグなしで開始したとき、
300行ぐらい過ぎると古い結果が見えなくなってしまいます。
消えてしまった結果を見ることはできないのでしょうか?

154:デフォルトの名無しさん
10/01/16 19:06:17
「結果」とは何ですか?標準出力のログ?

155:デフォルトの名無しさん
10/01/16 19:16:51
あ、すいません、それのことです

156:デフォルトの名無しさん
10/01/16 19:50:32
>>144
NGのやつはなんでNGなの?

157:デフォルトの名無しさん
10/01/16 20:15:49
javaのBooleanってなんで、Booleanってクラス名になったんですかね?
null、true、falseの3つの状態を保持できるじゃないですか

158:デフォルトの名無しさん
10/01/16 20:28:06
アホか

null, true, false があるから boolean なんだよ
SQL だってそうだ

perl だったら undef, true, false だ

C に至っては !0, 0 だぞ

159:デフォルトの名無しさん
10/01/16 20:29:00
>>157
booleanのラッパーだからだろ。

160:デフォルトの名無しさん
10/01/16 20:38:54
最近はオートボクシングでbooleanValue・valueOfがいらなくなってるせいか?

161:デフォルトの名無しさん
10/01/16 21:31:14
>>156
たまに通らないコンパイラがあるから。

162:デフォルトの名無しさん
10/01/16 21:34:17
>>157
ごめん、Trieanとかの方がよかったかな。

163:デフォルトの名無しさん
10/01/16 21:40:22
>>161
そんなのまで考慮する必要ないな。

164:デフォルトの名無しさん
10/01/16 21:54:46
>>150
C++脳の俺は、
クラス->定義、構造
インスタンス->物体、操作する傀儡でクラスのような形をしていることが多い。
オブジェクト->概念。機能単位。
と、いう感じだな。

165:デフォルトの名無しさん
10/01/16 23:01:04
なんで、プログラミング言語はUnixプラットフォーム上で作られるんだろ
てか、windowsオンリーの言語はマイナーな気がする

166:デフォルトの名無しさん
10/01/16 23:06:49
windowsオンリーだからね

167:デフォルトの名無しさん
10/01/16 23:21:42
>>165
pythonはプラットホーム中立な感じ。

168:デフォルトの名無しさん
10/01/16 23:29:51
VBAはある意味一番メジャーなんじゃない?

169:デフォルトの名無しさん
10/01/16 23:52:35
えっ

170:デフォルトの名無しさん
10/01/17 02:12:08
たしかにVBAは一般ユーザが一番触れやすいところにあるかもしれないね

171:デフォルトの名無しさん
10/01/17 02:17:11
ぇっ

172:デフォルトの名無しさん
10/01/17 02:17:17
しかし触れるとなかなか抜け出せない

173:デフォルトの名無しさん
10/01/17 02:32:17
JavaとVBAの違いなんてEmacsLispとSchemeの差程度だよな

174:デフォルトの名無しさん
10/01/17 02:34:11
いや、全然違うから

175:デフォルトの名無しさん
10/01/17 12:35:23
バブルソートを少ないコードで実装できる言語ってどれでしょうか?

176:デフォルトの名無しさん
10/01/17 12:41:39
C#

177:デフォルトの名無しさん
10/01/17 13:22:34
バブルソート程度ならどの言語でも大差ないと思うけど。
改行せずに1行で書ける程度だし。
改行を強制する言語多くなるかな。

178:デフォルトの名無しさん
10/01/17 13:25:14
×改行を強制する言語多くなるかな。
○改行やインデントを強制する言語はコードが多くなるかな。

179:デフォルトの名無しさん
10/01/17 13:32:05
ライブラリーとソフトのコードを眺めていると、雰囲気が違うね
ライブラリーは読みやすいけど、ソフトのメソッドがかなり長い気がする
恥ずかしいけど、そんな事すら知らんかったよ

180:デフォルトの名無しさん
10/01/17 13:33:17
C#が使い易すぎて困る
F#とか使えるようになったら他のやりたくなくなる

181:デフォルトの名無しさん
10/01/17 13:46:33
俺もC#依存症だ
C++も一応使ってたけどC#始めて忘れちゃったw

182:デフォルトの名無しさん
10/01/17 13:49:32
俺もC#好きだな、不用意なバグが出にくいし、作るの簡単だし。
でもC++も好きなんだ俺。

183:デフォルトの名無しさん
10/01/17 14:45:10
vb.netからC#に乗り換えたけどあんま変わらない

184:デフォルトの名無しさん
10/01/17 15:10:58
そりゃ変わらない部分だけを使ってりゃかわらんだろ

185:デフォルトの名無しさん
10/01/17 15:21:28
windowプログラムって、作るものって何があんの。
コマンドプロンプトのプログラムしか作るもの無いが。
windowsプログラムは面倒な上に、必要なソフトはもう既に
パソコンに入ってるんで、プログラムの本読んでも何のために
こんな物を作るのか、車輪の再発明してどうするんだという
疑問になる。

ms-officeやtera-padやwindows付属のペイントや電卓、firefox、
thunderbirdとかの既にあるソフトの他に何を必要とするのか
と思ってしまうが。

windowsプログラムはもう不要で、次に必要なのは、ms-office上で
動くマクロと、コマンドプロンプトで既にあるdosコマンドにはない、
自分の目的に合った処理をするプログラムだけではないのかと。


186:デフォルトの名無しさん
10/01/17 15:31:33
で?

187:デフォルトの名無しさん
10/01/17 15:34:12
だから、windowsプログラムの作るべきものは何があるのかと聞いてるんだが。

188:デフォルトの名無しさん
10/01/17 15:42:24
だから、

ms-office上で動くマクロと、
コマンドプロンプトで既にあるdosコマンドにはない、
自分の目的に合った処理をするプログラム

なんだろ。結論出てるじゃん。

189:デフォルトの名無しさん
10/01/17 15:49:43
だから、officeのマクロやdosコマンドのプログラムではなく
windowsプログラムで作るものを言ってるんだ。


190:デフォルトの名無しさん
10/01/17 15:51:21
サーバーでDBのシステム作って、それをクライアントで操作するアプリケーションでも作ってごらん

191:デフォルトの名無しさん
10/01/17 15:51:34
自分の目的に合った処理をするプログラム

だろ。

192:デフォルトの名無しさん
10/01/17 15:56:16
>>187
linux場合、世界で使われているソフトが多いけど、日本オンリーのソフトは少ない気がする
・2ちゃんねるブラウザは「JD」くらいしかない
・ファイル交換ソフトは「torrent」、「gnutella」だけ
・漫画ビューアも無いに等しい
・wineで動いているソフトも文字化けが酷いから、ネイティブの需要もあるハズ

windowsは高性能なソフトが沢山あるから車輪の再発明だと感じるけど、
linux & macだと必要なソフトが無いって事も多いと思うよ

193:デフォルトの名無しさん
10/01/17 16:00:38
>>189-192
小学生相手にマジレスしてどうする

194:デフォルトの名無しさん
10/01/17 16:01:01
MMDはWindowsにしかないし

195:デフォルトの名無しさん
10/01/17 16:11:58
小学生扱いするのは勝手だが、「で?」「結論でてるじゃん」
「自分の目的に合った処理をするプログラム だろ」
って、まるで全然文章が読めてないと言うしかないな。

196:デフォルトの名無しさん
10/01/17 16:14:06
元の文章がそうなんだからしょうがないだろ。

197:デフォルトの名無しさん
10/01/17 16:17:11
public class AbstractTest {
private Hoge h = new hoge();
public void add○○(○○ m) {
h.add(m);
}}

public class Hoge {
public void add(○○ m) {
}}

AbstractTestではHogeクラスにいろいろな情報を保持させています。
add○○(○○ m)だけでなく、ほとんどのメソッドがHogeを使っています。
この場合、UMLでは関連 or 依存のどちらになるのですか?

198:デフォルトの名無しさん
10/01/17 16:29:01
俺は、C#もJavaも無知なので上のコードがそのどちらなのかも
判別できないんだが、それらの言語を修得したら、コマンドプ
ロンプトやめてwindowsプログラムでおいしいものを作ることを
見つけられるようになるかな。

199:デフォルトの名無しさん
10/01/17 16:47:07
言語を習得したから、作りたい目的ソフトが出来るのじゃない。
windowsプログラムでおいしいものを見つけたから、それを作りたくなるのだ。
プログラミングが出来ても、なにを作ったらいいかわからない人間は結構いる。

200:デフォルトの名無しさん
10/01/17 16:50:16
ネタがほしいの?

201:デフォルトの名無しさん
10/01/17 16:51:48
もう一言付け加えるなら、言語を習得した段階は、ようやくよちよち歩きが出来た程度。
みんなが認める、実用的なソフトが作れるのは遙か先。

>プログラミングが出来ても、なにを作ったらいいかわからない人間は結構いる。
これに追加で、目的ソフトをどうやって作ったらいいか分からない人間は、とても多い。


202:デフォルトの名無しさん
10/01/17 16:54:11
そろそろ結論を。

203:デフォルトの名無しさん
10/01/17 16:56:42
第三者が何結論を求めてるんだ。

204:デフォルトの名無しさん
10/01/17 17:00:27
ごめんなさい。

205:デフォルトの名無しさん
10/01/17 17:01:24
Linuxならソフトはほとんどオープンソースだからバージョンアップの範囲が広いけど
Windowsはほとんどがオープンソースじゃないので「作り直し」が非常に多い
業務系ならWindowsがアップグレードすると使えなくなるとかザラ
未だにXP使い続けてる会社が多いのもソフトウェアの問題がネックになってる事が多い

206:デフォルトの名無しさん
10/01/17 17:27:41
>>205
>未だにXP使い続けてる会社が多いのもソフトウェアの問題がネックになってる事が多い
これはちょっと違う思うぞ、資金を投資してUPする価値を見いだせない。が一番だと思う。
もちろんソフトの問題も含まれるが。UPする価値がないんだよ。

>Linuxならソフトはほとんどオープンソースだからバージョンアップの範囲が広いけど
これが本当に利用者にとって価値があるのなら、Linuxが広がっているはずなのだが。
現実は全く端末ユーザーに広まっていない。
その現実を見ると、Linuxのオープンソースにあまり価値がなかったと思わずにいられない。

207:デフォルトの名無しさん
10/01/17 17:34:13
未だにころころ仕様が変わるパソコン文化そのものが未熟

208:デフォルトの名無しさん
10/01/17 17:39:14
未熟と言うことは、より成長する可能性がふんだんに含まれているんだな。
まだまだ、ビジネスチャンスは豊富で、可能性が広がっているんだな。
楽しみだ。

209:デフォルトの名無しさん
10/01/17 17:40:48
多いと言ってるだけで全てだとは言ってないような?
結局OSをアップグレードとすると業務系まで入れ替えなきゃならないというような
話になるととんでもない金額になってしまう
やりたくても出来ない=投資価値が無いというならその通りだが
Windows系のソフトウェアハウスなんてそれで食ってるんだけどな
.NETが3.0になってるのに1.1で作ってきて「バージョンアップ出来ません」
とか言うようなところは潰れてほしいな

210:デフォルトの名無しさん
10/01/17 17:49:39
プログラムで「おもしろいことをする」遊び道具のための
役割もあるんだろうが、特に仕事では、本来は作業を効率
化するするのか究極的な目的のはずなのに、その観点で考
えると、意味の無いと思えるようなプログラムが少なくは
ないと言えるのではなかろうか。そんな感じのプログラム
の作り方を解説してる本には、なかなか興味が持てないん
だな。

そして、何もWindowsプログラムである必要は無く、コマン
ドラインからの実行で十分ではないかと思ってしまうんだな。
プログラムというは、つまりは入力があって、目的の処理
をして、その結果を出力するだけだよな。コマンドからだ
と、バッチファイルで実行したりもできる利便性もあるし。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5399日前に更新/148 KB
担当:undef