質問: 整数データが1行に1つ計500個書かれているテキストファイルdata_5_1000_500.txtのデータの最大値、最小値、平均値を求めるプログラムCalcFile.javaを書きたいです。ちなみに500個の整数は乱数です。Emacsでプログラムを書き、ターミナルでコンパイルしています。 まず、最大値を求めるプログラムMax.javaを試しに作ってみました。 以下はプログラムです。 import java.util.Scanner; public class Max{ public static void main(String[]args){ Scanner stdin=new Scanner(System.in); int max=Integer.MIN_VALUE, x; while(stdin.hasNext()){ x=stdin.nextInt(); if(x>max)max=x; } System.out.printf(”max=%d\n”,max); } } このプログラムはきちんと作動しました。ファイルからデータを受取Maxを求めることができました。 これをもとに最小値を求めるプログラムMin.javaを作りましたが何故か最大値が出力されてしまいます。 以下は私が作成した最小値を求めるプログラムです。 import java.util.Scanner; public class Min{ public static void main(String[]args){ Scanner stdin=new Scanner(System.in); int min=Integer.Max_VALUE, y; while(stdin.hasNext()){ y=stdin.nextInt(); if(y data_5_1000_500.txt cat data_5_1000_500.txt java Min < data_5_1000_500.txt と入力しましたが、maxの値しか出力されません。 よろしくお願いします。
回答: Javaで実行してみましたが、特に間違っていません。 入力データがおかしいか、Minを実行したつもりがMaxを実行していませんか?