ふらっとC#,C♯,C#(初心者用) Part45at TECH
ふらっとC#,C♯,C#(初心者用) Part45 - 暇つぶし2ch784:デフォルトの名無しさん
09/10/27 17:50:35
>>777

遅れてすいません。
取り込んだときに表示を加工させたいです。
,が付いたときに改行させるように出来たりするのでしょうか

785:デフォルトの名無しさん
09/10/27 17:55:24
>>784
こんな感じ?

string aaa = "123,456";
aaa = aaa.Replace(",", ",\r\n");
txtData.Text = aaa;

786:デフォルトの名無しさん
09/10/27 18:02:38
>>782
>そのハンドラはボタンをダブルクリックして自動でできたやつ?

そうです
Formをクリックして背景色をかえる

private void Form1_Click(object sender, EventArgs e)
{
this.BackColor = System.Drawing.Color.DarkBlue;
}

というサンプルはMSDNにあるんですけど
ボタンをクリックしてFormの背景色をかえるサンプルが
WEB上にみあたらないのです

787:デフォルトの名無しさん
09/10/27 18:04:18
>>786
ダメっぽいというか
どんなエラーが出てるのか(コンパイルエラー?)

出ていないならその処理は通っているのか


788:デフォルトの名無しさん
09/10/27 18:06:34
>>780
XDocumentでggrks

789:デフォルトの名無しさん
09/10/27 18:11:27
>>786
Form1_Clickもbutton1_Clickも、Form1のメソッドなんだから
その中のthis.BackColorはForm1の背景色だよ。

790:デフォルトの名無しさん
09/10/27 19:04:40
public void Main()
{
string aaa = "123,456";
aaa = aaa.Replace(",", ",\r\n");
textBox1.Text = aaa;
}
で、どんな表示になるかと思ってやってみたのですが
何も表示されませんでした・・・
aaaに123,456入れてそれをリプレイスでなんか()のことをして
表示って感じと思ったのですが間違ってましたか?

初心者で完璧にごめんなさい

791:デフォルトの名無しさん
09/10/27 19:16:47
>>790
そのMain()が何処からも呼び出されてないんじゃないの?

792:デフォルトの名無しさん
09/10/27 19:17:32
そのMainとやらは[STAThread]なんだろか

793:デフォルトの名無しさん
09/10/27 19:18:43
ああすまんstaticじゃないから違うな

794:785
09/10/27 19:20:31
IDEが今ないから手書きなんでその辺は適当にあてはめてほしかったんだが・・・

ボタン配置してそのクリックのイベントかなんかにでも・・・・

string aaa = "123,456";
aaa = aaa.Replace(",", ",\r\n");
messageBox.Show(aaa);

こっちのが良かったっけ?

ひとまず表示される結果は


123,
456

て表示されるよ

795:デフォルトの名無しさん
09/10/27 19:31:47
>>794
おぉ・・・出来ました。

ここから自分で使う用途に合うようにやってみたいと思います

大変ありがとうございました。

796:デフォルトの名無しさん
09/10/27 20:22:44
「' ' (16 進数値 0x19) は無効な文字です。 」と言われたのですがそんな文字が見当たりません!
検索すると16進数値の0xらしいのですが・・・
エラー回避で0xを削除?する方法はありますでしょうか?

XmlDocumentl.Load(string);


797:デフォルトの名無しさん
09/10/27 20:26:07
俺らはそのxml見てないから
見当たりませんって言われても困るぜ

798:デフォルトの名無しさん
09/10/27 20:28:07
>>796
0xってのはこの数字が16進数だよっていう記号みたいなもの
16進数での19が無効な文字ってことだ

799:796
09/10/27 20:30:40
あー・・・
自分の間抜けさに目が覚める思いがしました!


800:デフォルトの名無しさん
09/10/27 21:13:09
>>789
>Form1_Clickもbutton1_Clickも、Form1のメソッドなんだから

あぁそうなのか
うん
動きました
有難うございました

801:デフォルトの名無しさん
09/10/27 21:37:01
ソースの記述を簡略化するために汎用的なクラスを作成中なんだけど
いろんなひとのクラスをぱくってるんだけど
こんなので本当に理解したことになるのかな?

802:デフォルトの名無しさん
09/10/27 21:47:27
>こんなので本当に理解したことになるのかな?
こんな質問が出てくる程度の理解度なら。理解したことにはならないんじゃね。

803:デフォルトの名無しさん
09/10/27 21:49:45
このサンプル動きますか?
起動しているっぽいけどウィンドウが表示されない
ms-help://MS.VSCC.v90/MS.VSIPCC.v90/MS.XNAGS31.1041/XNA/GoingBeyond_GameIn60Minutes.htm

804:デフォルトの名無しさん
09/10/27 22:37:02
みなさん数学など好きそうですので、これ問題出されたので一緒に考えてくれませんか?ちなみに明日回答もわかります。
問.みなさん"囚人のジレンマ"という話はご存知かと思います。
コンビを組んでいたスパイが2人とも別々の取調室で尋問をうけ、罪を問われる場面でどのように振舞うのがいいかという問題です。
具体的には以下のようになります。
1、自分も相棒も黙秘となれば証拠不十分なので不法侵入した罪だけでそれぞれ半年ずつの罪
2、自分だけ黙秘して、相棒が自白すれば相棒は司法取引で釈放に、自分は10年の罪
3、相棒だけ黙秘して、自分が自白すれば自分は司法取引で釈放に、相棒は10年の罪(2の逆パターン)
4、両方自白すればそれぞれ5年の罪

┌───┬───┬───┐
│自分\相棒  │.  黙 秘  ..│   自 白  .│
├───┼───┼───┤
│  黙 秘   .│(0.5年,0.5年) │ (10年,釈放)│
├───┼───┼───┤
│  自 白   .│ (釈放,10年) .│ (5年,5年)  │
└───┴───┴───┘
(自分の懲役、相手の懲役)

これを踏まえて、自分は相棒に協調するか、裏切るか、ということでこれに点数をつけてゲームをしてみました。
┌───┬───┬───┐
│自分\相棒  │  協 調    │  裏切り   │
├───┼───┼───┤
│  協 調   .│ (3点,3点)  │ (0点,5点)  │
├───┼───┼───┤
│  裏切り   .│ (5点,0点)  │ (1点,1点)  │
└───┴───┴───┘
(自分の点、相棒の点)

このような点数のつけ方で100人のプログラマが、どのように協調、裏切りを判断するかというところでプログラムを書いて対戦会が行われました。
100人が総当りで、1人に対しては200回勝負するというルールです。つまり99×200の試合をするわけです。
賞金のかけられた本気で挑む大会出場者たち。これ実は実際に行われたことのあるものです。
さあ、みなさんどんなプログラムが優勝したでしょう?アルゴリズムを考えてください。

805:デフォルトの名無しさん
09/10/27 22:43:01
宿題スレいけよハゲ

806:デフォルトの名無しさん
09/10/27 22:44:41
あ、ちなみにすべての試合が終わった後、合計した点数が一番高かったプログラムが優勝だそうです
ぼくはすべて裏切りだと思いました。明日回答が教えてもらえるのでまた報告します。
一応プログラミングだと思って。この間アルゴリズムの質問してた方なんかもこれは結構いい問題のような気がします。
明日またレスします。おやすみなさい


807:デフォルトの名無しさん
09/10/27 22:47:49
しなくていいよ。

しっぺ返しが強い、って記録もあるし。
URLリンク(ja.wikipedia.org)

808:デフォルトの名無しさん
09/10/27 22:49:33
>>780
string xmlstr = "<root>・・・(省略)・・・</root>";
XPathDocument doc = new XPathDocument(new StringReader(xmlstr));
XPathNavigator nav = doc.CreateNavigator();
XPathExpression exp = nav.Compile("/root/data");
XPathNodeIterator nodes = nav.Select(exp);
while (nodes.MoveNext()) {
Console.WriteLine(nodes.Current.ToString());
}
こうかな?まあ、XPathを使う。

809:デフォルトの名無しさん
09/10/27 22:53:21
>>804
相手が裏切るまでは強調する単純なアルゴリズムが結局一番強そう。

810:デフォルトの名無しさん
09/10/27 23:11:39
単にランダムに出すだけとか

811:デフォルトの名無しさん
09/10/27 23:18:17
取り合えず思いつく限りのアルゴリズムを考える
最初の数回の手で相手のアルゴリズムを予想
そこからはそのアルゴリズムに対して最適の手を出しつつアルゴリズムを訂正していく

相手がランダムに出さない限りこれが一番じゃね?

812:デフォルトの名無しさん
09/10/27 23:22:38
そういうのは「トートロジー」って言うんだよw
最強の手を考えれば最強だ、って言ってるのと同じじゃないか

813:デフォルトの名無しさん
09/10/27 23:24:50
>>812
そんなこと言ってないんだが・・・

814:デフォルトの名無しさん
09/10/27 23:26:44
言ってることに気付いてないだけなんだよ悪いけど。

815:デフォルトの名無しさん
09/10/27 23:26:57
まあ、一番とは言えないな
例えば相手のアルゴリズムが同じだった場合を考え出すと際限が無くなるし

816:デフォルトの名無しさん
09/10/27 23:28:33
>>814
じゃ、どこがか説明してくれ
俺馬鹿だからトートロジーでググっだけど俺の考えとは全く違うことのようだったんだけど

817:デフォルトの名無しさん
09/10/27 23:35:32
>>816
「相手に合わせて<最善の>戦略を採る」という方法論は、
「相手の戦略を考慮しない」という方法を特殊ケースとして含む。

つまりそれは単に「最善の戦略を採る」と言っているのと同じことだ。

であるから「相手に合わせて<最善の>戦略を採るのが一番」というのは、
最善の戦略を採るのが一番だ、というトートロジーに過ぎない。

・・・って言っても理解できないよねたぶん。

818:デフォルトの名無しさん
09/10/27 23:39:58
コピペに釣られてC#に関係のない話してんじゃねーよ

819:デフォルトの名無しさん
09/10/27 23:40:59
>>817
>「相手の戦略を考慮しない」という方法を特殊ケースとして含む。

相手が「相手の戦略を考慮しない」ときの話か?
それは常に同じ手を出すorランダム
このとき常に同じ手を出すって方法は容易に予測して最適の手を出せる
ランダムの時は最初に無理って言った

820:デフォルトの名無しさん
09/10/27 23:43:43
また、自身が「相手の戦略を考慮しない」特殊ケースはランダム以外では無いと思うが?
相手が少しでも考えた手を出す限り完璧とはいかないがある程度次の手が予測可能

821:デフォルトの名無しさん
09/10/27 23:47:59
なーんかズレてるけど、君の意見がトンマなのは「最善の戦略を採るのが一番だ」
って言ってるところなんだよだから。

そんなの終了条件がない再起呼び出しと一緒だって分からないかね。

822:デフォルトの名無しさん
09/10/27 23:48:54
IT土方が手を出せるような問題じゃないぞ
あとは数学者に任せてぼろが出ないうちにやめとけ
まあ最近は文系経済学者が偉そうに論じたりしてるけど・・・

823:デフォルトの名無しさん
09/10/27 23:55:42
>>821
相手のアルゴリズムを 予想 して
それに対する最善の戦略をとるってこと
もちろん相手のアルゴリズムがこちらの予想した物以外だったり相手がわざと騙す手をとった場合このアルゴリズムは意味をなさないが
あと
もし、本当にこのような大会があった場合の一番良いのでは?って言う方法を言ってて(要するに相手も人間の書いたプログラムとして)
数学的なジレンマの最適解を言ってる訳じゃない

824:デフォルトの名無しさん
09/10/27 23:59:58
あ、つい熱くなってしまった
ここC#スレだった
スレ違い長々とすみませんでした

825:デフォルトの名無しさん
09/10/28 00:01:59
>>823
だから最善の戦略って何?

最善の戦略はなんですか、って問いに「それは最善の戦略を採ることです」
って答えて何か意味があるの?

相手のアルゴリズムを予想する、って前置きしたことで何か言ったつもりに
なっているのかも知れないが、「相手のアルゴリズムを予想する」には
「相手のアルゴリズムを無視する」を特殊ケースとして含むから、それだけでは
何も言っていないのと同じであることは既に説明したはずだけど。

826:デフォルトの名無しさん
09/10/28 00:06:17
>>825
スレタイ読めない馬鹿がまだ騒いでやがる

827:デフォルトの名無しさん
09/10/28 00:07:05
ランダムと同じ程度には強いんじゃね?

828:デフォルトの名無しさん
09/10/28 00:09:11
あ、こいつ俺以上に馬鹿なのか
なんもわかってないのはあなたの方だね

829:デフォルトの名無しさん
09/10/28 00:10:19
いや、俺のほうがわかってないよ

830:デフォルトの名無しさん
09/10/28 00:10:59
>>828
なんで俺のふりするんだよ
スレチだから謝ったのに

831:デフォルトの名無しさん
09/10/28 00:16:07
まあ、アホは>>823なんだけどね


832:デフォルトの名無しさん
09/10/28 00:24:03
いや、俺の方がアホだ

833:デフォルトの名無しさん
09/10/28 00:29:48
うん

834:デフォルトの名無しさん
09/10/28 00:35:16
みんな知ってるよ

835:デフォルトの名無しさん
09/10/28 01:47:22
いちゃいちゃ

836:デフォルトの名無しさん
09/10/28 02:53:12
プロジェクトのソースを変更するので
新しいプロジェクト名にしてからやりたいのですが
どうすればいいですか?

837:デフォルトの名無しさん
09/10/28 03:34:17
ソリューションエクスプローラから名前を変更したいファイルを選んでプロパティウィンドウでファイル名を変更
Propertiesから諸々の名前を好きなように変更
ソリューションファイルを手動で開いてパスも全部書き換える

838:デフォルトの名無しさん
09/10/28 08:27:39
プロジェクトを別に新規作成してソースコードを全部突っ込んだ方が早い気がする

839:デフォルトの名無しさん
09/10/28 09:59:44
>>803
XNAじゃないか。
試したけど普通に動いたよ。
新規作成した何もしないXNAアプリは実行できる?

840:デフォルトの名無しさん
09/10/28 11:04:28
IEnumeratorの結果をソートできますか?

841:注目
09/10/28 11:08:11
991302490234374



中学生が 自主制作ハメ撮りAV 売り捌いてたらしい ★12
スレリンク(news4vip板)


まとめwiki
URLリンク(www31.atwiki.jp)




371734619140624

842:デフォルトの名無しさん
09/10/28 11:41:44
>>804
これ思い出した。
URLリンク(ja.wikipedia.org)

843:デフォルトの名無しさん
09/10/28 13:14:30
テキストボックスの最後の行の値を取りたいのだがどうすれば取れる?
いろんな状況とかパターンがあると思うがそのあたりは任せる
ぱっと思い付いたのでいいから書いてくれ
頼む

844:デフォルトの名無しさん
09/10/28 13:16:00
内容を改行コードでスプリットして配列へ
その配列の最後の要素がそうじゃね?

845:デフォルトの名無しさん
09/10/28 13:29:17
TextBox1.Lines(TextBox1.Lines.Length - 1)

846:デフォルトの名無しさん
09/10/28 16:05:46
VB?

847:デフォルトの名無しさん
09/10/28 16:14:39
ほんとだ
C#だとtextBox1.Lines[textBox1.Lines.Length - 1]になるか

848:デフォルトの名無しさん
09/10/28 16:58:19
>>839
> 新規作成した何もしないXNAアプリは実行できる?
はい、動きます

GamePadState lastState = GamePad.GetState(PlayerIndex.One);
ステップイン実行したところ、Game1のフィールド変数のこの部分で固まるので
GamePadState lastState;
これに変更したら、うまく動作しました

動作環境は2008C#EE XNA3.1
パッドがPS2のコントローラーなのでこれが原因なのかな?
ほかのプログラムでは一応コントローラーは認識して動いているんですけど

849:デフォルトの名無しさん
09/10/28 17:08:14
>>848
XNAはXbox360のコントローラしか使えないよ
他のコントローラーを360のコントローラーに見せかけるドライバとかもあるけど。
ただ、他のPADが刺さってる状態で GamePad.GetState() がどうなるかはわからない。
環境あるとこで試してみようかな。

850:デフォルトの名無しさん
09/10/28 17:11:45
>>847
ジェネリックなコレクションの最終要素は
textBox1.Lines.Last(); でアクセスした方がいいのかな?
それとも非ジェネとジェネで別のアクセス表現が混在しないように統一した方がいいものなんだろうか?
System.Collections.Generic.IEnumerable → Hoge.Last();
System.Collections.IEnumerable → Hoge[Hoge.Length - 1];
これ公式のガイドラインとか無いのかな?

851:デフォルトの名無しさん
09/10/28 17:40:30
>>847
>>850
ありがとう
超参考になった愛してる


852:デフォルトの名無しさん
09/10/28 17:56:11
>>840
Enumerable.OfTypeまたはEnumerable.CastでIEnumerable<T>にできる。
そうすれば、OrderByするなり、ToListまたはToArrayしてそれぞれのSortを呼ぶといったことが可能になる。

ちなみに、>>850の場合でもOfTypeまたはCastを使う手が考えられる。

853:デフォルトの名無しさん
09/10/28 18:08:29
>>852
Oh excellent !!!

854:779
09/10/28 18:26:13
>>783
ありがとうございます
調べながらやってみましたが、始めて2週間程度の自分にはまだ無理だったようです

855:デフォルトの名無しさん
09/10/28 20:38:26
>>852
でもこれってよく考えるとタイプセーフじゃなくない?これでいいんだろうか?

856:デフォルトの名無しさん
09/10/28 20:45:15
そんなもんIEnumerable(非ジェネリック)使う時点で仕方ないだろ
普通にforeach使ったとしてもforeach(Hoge item in 非ジェネリックコレクション)はタイプセーフじゃないよ

857:デフォルトの名無しさん
09/10/28 22:01:47
hmm...

858:デフォルトの名無しさん
09/10/28 22:16:34
最近LINQの魔力に取りつかれてて、殆どをLINQに頼るようになったんだけど、
何かデメリットや欠陥的なものを探してる。

俺を現実に引き戻してほしい。

859:デフォルトの名無しさん
09/10/28 22:24:22
キャッシュされない→参照のたびにいちいち再計算される

860:デフォルトの名無しさん
09/10/28 22:31:52
キャッシュしたかったらToArrayなりToListなり使えばいい
yieldの仕組み上当然のことでむしろそれを狙ってやってるわけで欠陥でも何でもない

861:デフォルトの名無しさん
09/10/28 22:38:15
言い方が悪くてスマンね

ToArrayなりToListなり使わないとキャッシュできないって言ってんだよハゲ

862:デフォルトの名無しさん
09/10/28 22:39:25
( ゚д゚)

( ゚д゚ )

863:デフォルトの名無しさん
09/10/28 22:40:19
そんなの普通にループで回しても一緒じゃんw
結局,結果を配列なりリストなりに入れるだろ?
LINQはそのループの部分を抽象化してるだけだ

864:デフォルトの名無しさん
09/10/28 23:08:27
こっち見んな

865:デフォルトの名無しさん
09/10/28 23:10:09
>>862
ハゲw

866:555
09/10/28 23:16:35
やっぱり自分の作ったクラスはどんくさくて使い物にならないことが判明しました・・・
ある文字を媒体に128,256bitなど指定したビット配列を返すクラスなどはないでしょうか?
RijndaelManagedには乱数などを作成はあるのですが、共通キーとすることが前提なので
ZIPのように「sage」見たいな文字を複合キーとする暗号化はどのように行うのでしょうか?
よろしくお願いいたします。

867:デフォルトの名無しさん
09/10/28 23:24:50
>>866
SHA系とかでハッシュ作ればいい。

868:デフォルトの名無しさん
09/10/28 23:44:59
>>866
O(n)

869:デフォルトの名無しさん
09/10/29 00:05:03
鍵を手渡しするわけでもないのに無理矢理に共通鍵暗号を使う意味が分からない
それなら大人しく公開鍵暗号で鍵交換すればいいのに

870:デフォルトの名無しさん
09/10/29 00:05:59
P2Pで手に入れたエッチな動画を親に見られたくないんじゃないか?

871:デフォルトの名無しさん
09/10/29 00:09:12
自分しかいないなら共通鍵で問題ないだろ
誰とも鍵交換しないんだから

872:555,558
09/10/29 00:14:25
データの認証のときは共通鍵より公開鍵の方がよいのかまったく無知で判断できませんでした・・・。

もう少し公開、共通の違いを調べてきます。

873:デフォルトの名無しさん
09/10/29 00:15:34
そもそもこの人が何をやりたいのかハッキリしていないからアドバイスできね

874:デフォルトの名無しさん
09/10/29 00:17:39
それはひみつのあっこちゃん

875:デフォルトの名無しさん
09/10/29 10:52:04
簡単に公開鍵とか言ってる奴はホントに分かって言ってるのか?


876:デフォルトの名無しさん
09/10/29 10:54:43
あと>>733


877:デフォルトの名無しさん
09/10/29 21:19:38
例のごとく、練習としてメモ帳を作成しているのですが、検索機能で行き詰りました。

ひとまず検索用のフォームを作ったのですが、その先が何をすればよいのかさっぱりわかりません。
ご教授願います。

878:デフォルトの名無しさん
09/10/29 21:32:03
String.IndexOfとTextBox.Select

879:デフォルトの名無しさん
09/10/29 22:56:14
OpenFileDialogなどのコモンダイアログのタイトルバーの色や背景色を変更したいのですが、どうすればよいですか?

880:デフォルトの名無しさん
09/10/29 23:05:32
コントロール パネル\デスクトップのカスタマイズ\個人設定\ウィンドウの色とデザイン
そして、デザインの詳細設定...
Windows7 なら。

881:デフォルトの名無しさん
09/10/30 11:59:49
ListViewの描画のちらつき何とかならないのかなって思っていたけど自己解決しました

882:デフォルトの名無しさん
09/10/30 12:03:07
じゃぁ書くなよww


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch