C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: Visual Basic2008で乱数を小さい順に並べ替える


(過去ログ 75 を表示中)

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■44294 / inTopicNo.1)  Visual Basic2008で乱数を小さい順に並べ替える
  
□投稿者/ QED (1回)-(2009/12/04(Fri) 14:24:49)

分類:[VB.NET/VB2005 以降] 

2009/12/04(Fri) 14:26:23 編集(投稿者)
2009/12/04(Fri) 14:26:16 編集(投稿者)

Visual Basic2008で乱数を小さい順に並べ替えるプログラムがわかりません。

Visual Basic2008でテキストボックスに何個データを並び替えるか(例えば10個など)を入力すると以下の様な乱数を外部から読み込んで、並べ替えたデータを保存先を選択して、保存する方法がわかりません。

例)乱数の例
1283
9983
9021
882
839
91
22
375
1128
763
2887
1922
773
6
738
11
982
563
7332
89732
98
83
27
8663
673
7382
887
9361
82873
7
上の数は、30個ありますが、個数が増えても(例えば1000個)並び変えられるようなプログラムにしたいです。

プログラムは、以下のようにしたいのですが。
『FormにツールボックスからOpenFiledialogとSaveFiledialogを張り付ける。

Private Sub・・・・・・
(1)変数の定義や初期設定を行う。

OpenFileDialog1.ShowDialog()
FileOpen(1, OpenFileDialog1.FileName, OpenMode.Input)

(2)この間にデータを入力するプログラムを書く。
データを入力すためにはInput(1,・・・・)を使う。
FileClose(1)

(3)この間に並び替えをするプログラムを書く。

SaveFileDialog1.ShowDialog()
FileOpen(1, SaveFileDialog1.FileName, OpenMode.Output)

(4)この間に結果を出力するプログラムを書く。
結果を出力するためにはPrintline(1,・・・・)を使う。

FileClose(1)

End Sub」

(1)〜(4)にどんなプログラムにすればよいかがわかりません。


引用返信 編集キー/
■44295 / inTopicNo.2)  Re[1]: Visual Basic2008で乱数を小さい順に並べ替える
□投稿者/ επιστημη (2303回)-(2009/12/04(Fri) 14:31:29)
επιστημη さんの Web サイト
> (1)〜(4)にどんなプログラムにすればよいかがわかりません。

つまり"ぜんぶ"じゃん orz

List(Of Integer)のSortってメソッド呼ぶだけで小さい順に並び替えてくれるので、

- ファイルからデータを読んでList(Of Integer)に突っ込む
- Sort() する
- List(Of Integer)のナカミをファイルに書き出す

こんだけやればまぁできあがりです。
いっこずつ勉強してください。

引用返信 編集キー/
■44296 / inTopicNo.3)  Re[2]: Visual Basic2008で乱数を小さい順に並べ替える
□投稿者/ すがり (89回)-(2009/12/04(Fri) 14:34:17)
情報共有
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1233711307

こちらに回答ついているようですね。
引用返信 編集キー/
■44297 / inTopicNo.4)  Re[1]: Visual Basic2008で乱数を小さい順に並べ替える
□投稿者/ 魔界の仮面弁士 (1405回)-(2009/12/04(Fri) 15:25:37)
No44294 (QED さん) に返信
> FileOpen(1, OpenFileDialog1.FileName, OpenMode.Input)
> FileClose(1)

なぜ、今更 FileOpen を選択されたのでしょうか?
System.IO や My.Computer.FileSystem を使った方が扱いやすいと思いますが…。


> (1)〜(4)にどんなプログラムにすればよいかがわかりません。
あえて 1 行で書いてみる。

Imports System.IO
Public Class Form1
 Private Sub Button1_Click() Handles Button1.Click

  If OpenFileDialog1.ShowDialog() = DialogResult.OK AndAlso SaveFileDialog1.ShowDialog() = DialogResult.OK Then File.WriteAllLines(SaveFileDialog1.FileName, File.ReadAllLines(OpenFileDialog1.FileName).OrderBy(Function(s) CLng(s & "0")).ToArray())

 End Sub
End Class
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -