前提・実現したいこと
例えば、入力値が「3」だとすると要素数が[5]の配列を三つ作る、入力値が「4」だと要素数[5]の配列を四つ作るといった感じでJavaで記述するにはどうしたらいいか知りたいです。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
エラーメッセージはありません。
該当のソースコード
Java
1ソースコード 2import java.util.Scanner; 3 4public class Search{ 5 static int search(int[] a, int n, int key){ 6 int i=0; 7 8 while(true){ 9 if(i==n) 10 return -1; 11 if(a[i]==key) 12 return i; 13 i++; 14 } 15 } 16 public static void main(String[]args){ 17 Scanner stdIn=new Scanner(System.in); 18 19 final int num=5; 20 int[] x=new int[num]; 21 22 System.out.println("いくつ配列を用意しますか?"); 23 int layout=stdIn.nextInt(); 24 25 for(int y=1; y<=layout; y++){ 26 for(int i=0; i<num; i++){ 27 System.out.print("x[" + i + "]:"); 28 x[i]=stdIn.nextInt(); 29 } 30} 31 System.out.print("探す値:"); 32 int ky=stdIn.nextInt(); 33 34 int idx=search(x,num,ky); 35 36 if(idx==-1) 37 System.out.println("その値の要素は存在しません。"); 38 else 39 System.out.println("その値は" + idx + "にあります。"); 40 } 41}
試したこと
例えば入力値が「3」の場合、配列を3つ作るは出来ました。ただ、3つ配列がある上で例えば「2」を線形探索すると上手く線形探索行えなかったです。
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー