社員検索

ある会社では社員を4ケタの数字で構成される社員コードで管理しています。この会社の社員は10人でその社員コードと氏名は下表のとおりです。

社員コード社員名
1023宮田
1031千葉
1033佐藤
1040鈴木
1051高橋
1052田中
1058渡辺
1059伊藤
1061山本
1065小林

社員コードを入力すると社員名を出力するプログラムを作成してください(線形探索でかまいません)。また該当する社員がいない場合はその旨を表示してください。

  1. import java.util.*;
  2. public class StaffSearch {
  3. public static void main(String args[]) {
  4. Scanner sc = new Scanner(System.in);
  5. // 社員表の設定
  6. int id[] = new int[10];
  7. String name[] = new String[10];
  8. id[0] = 1023; name[0] = "宮田";
  9. id[1] = 1031; name[1] = "千葉";
  10. id[2] = 1033; name[2] = "佐藤";
  11. id[3] = 1040; name[3] = "鈴木";
  12. id[4] = 1051; name[4] = "高橋";
  13. id[5] = 1052; name[5] = "田中";
  14. id[6] = 1058; name[6] = "渡辺";
  15. id[7] = 1059; name[7] = "伊藤";
  16. id[8] = 1061; name[8] = "山本";
  17. id[9] = 1065; name[9] = "小林";
  18. // 検索
  19. System.out.print("社員コード: ");
  20. int x = sc.nextInt();
  21. // ここに社員コードを検索して社員名を出力するような
  22. // コードを記入してください。
  23. }
  24. }
H:\Documents\プログラミングI> javac StaffSearch.java↵

H:\Documents\プログラミングI> java StaffSearch↵
社員コード: 1040↵
1040は鈴木さんです

H:\Documents\プログラミングI> java StaffSearch↵
社員コード: 1041↵
該当する社員はいません

H:\Documents\プログラミングI> 

挑戦

この程度のデータなら線形探索で十分ですが,データはIDの昇順に並んでいるので二分探索が使えます。