質問編集履歴

2

乱数作成プログラムを追加しました

2016/06/16 20:33

投稿

prog1717nm
prog1717nm

スコア56

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- 整数データが1行に1つ計500個書かれているテキストファイルdata_5_1000_500.txtのデータの最大値、最小値、平均値を求めるプログラムCalcFile.javaを書きたいです。
1
+ 整数データが1行に1つ計500個書かれているテキストファイルdata_5_1000_500.txtのデータの最大値、最小値、平均値を求めるプログラムCalcFile.javaを書きたいです。ちなみに500個の整数は乱数です。Emacsでプログラムを書き、ターミナルでコンパイルしています。
2
2
 
3
3
  まず、最大値を求めるプログラムMax.javaを試しに作ってみました。
4
4
 
@@ -66,8 +66,76 @@
66
66
 
67
67
 
68
68
 
69
+ どこが間違っているか教えてほしいです。
69
70
 
70
71
 
72
+
71
- どこが間違っているか教えてほしいです。
73
+ また乱数生成プログラムは以下のようになっていす。
74
+
75
+ import java.util.Random;
76
+
77
+
78
+
79
+ public class Rand {
80
+
81
+ public static void main(String[] args) {
82
+
83
+ Random rand;
84
+
85
+ //コマンド引数からseed, N, nを決定
86
+
87
+ int N=100, n=20, seed=0;
88
+
89
+ switch(args.length) {
90
+
91
+ case 3: n = Integer.parseInt(args[2]);
92
+
93
+ case 2: N = Integer.parseInt(args[1]);
94
+
95
+ case 1: seed = Integer.parseInt(args[0]);
96
+
97
+ break;
98
+
99
+ default:
100
+
101
+ System.err.println("使い方: java Rand seed [Max] [n]");
102
+
103
+ System.err.println(" default Max=100 n=20 seed=0(no seed)");
104
+
105
+ System.exit(1);
106
+
107
+ }
108
+
109
+
110
+
111
+ // n個の乱数を生成
112
+
113
+ if(seed==0) rand = new Random();
114
+
115
+ else rand = new Random(seed);
116
+
117
+ for(int i=0; i<n; i++)
118
+
119
+ System.out.println(rand.nextInt(N));
120
+
121
+ }
122
+
123
+ }
124
+
125
+ このプログラムは最小値を求める場合でもこのまま使って大丈夫なのでしょうか?
126
+
127
+
128
+
129
+ ターミナルには
130
+
131
+ java Rand 5 1000 500
132
+
133
+ java Rand 5 1000 500 > data_5_1000_500.txt
134
+
135
+ cat data_5_1000_500.txt
136
+
137
+ java Min < data_5_1000_500.txt
138
+
139
+ と入力しましたが、maxの値しか出力されません。
72
140
 
73
141
  よろしくお願いします。

1

タイトルを変更しました

2016/06/16 20:33

投稿

prog1717nm
prog1717nm

スコア56

test CHANGED
@@ -1 +1 @@
1
- リダレクトが上手くいきません
1
+ テキストファルの出力が上手くいきません
test CHANGED
File without changes