0
これで、0を入力するまでユーザー入力を取得する必要があります。配列に格納して最小値を出力する必要があります。しかし、それは並べ替えの代わりに与えられた最後の入力番号を与え続け、リストの最小値を取得します。これまで私が行ってきたことがあります。再帰を使用した最小値の検索
import java.io.*;
import java.util.*;
public class FindingMin
{
public static void main(String[] args) throws IOException
{
int[] Numbers = new int[100];
int minimum = 0;
int InputParser;
String input= "1";
try
{
InputStreamReader stream = new InputStreamReader (System.in);
BufferedReader scan = new BufferedReader(stream);
InputParser = Integer.parseInt(input);
while(InputParser != 0)
{
input = scan.readLine();
InputParser = Integer.parseInt(input);
for(int i = 0;i<Numbers.length;i++)
{
if(InputParser == 0)
{
InputParser = 0;
}
else
Numbers[i] = InputParser;
}
}
minimum = findingMin(Numbers,Numbers[0],Numbers.length-1);
System.out.println("The minimum number is "+minimum);
}
catch(NumberFormatException exception)
{
System.out.println("Please enter integers only");
}
}
public static int findingMin(int[] list, int start, int end)
{
if (start == end)
return list[start];
else
{
int Min = findingMin(list, start, end-1);
if (Min < list[end])
return list[end];
else
return Min;
}
}
}
ご意見をお寄せください。あなたは余分なループを持っているためだ
は
なぜあなたは 'int [0]'で開始intを渡していますか?たぶんそれを最初に変えてみてください。 –
この宿題はありますか? –
命名規則、スペーシング、インデント、中括弧などと一貫してください。慣習の矛盾があるときは、コードについて推論するのが難しいです。 –