二进制搜索bash脚本

时间:2020-10-21 22:06:13

标签: linux bash shell command-line

我有一个脚本,它从文件中读取两个数组,一个称为名称,一个称为成绩,我需要从用户输入中读取一个名称,该输入也位于names数组中。

这是文本文件

David 89
Marvin 95
Rich 75

我需要对进入的每个名称使用二进制搜索,并显示其相应的等级。然后继续要求一个新名称,直到用户什么都不输入并退出循环

这是我的代码

names=()
grades=()

while IFS=" " read -r name score
do                                                                                                                              
  names+=( "$name" )                                                                                                      
  grades+=( "$grade" )                                                                                            
done < $inputfile

continue=0
while [ $continue == 0 ]
do
    if [[ $continue = 0 ]]; then
            echo " "
            echo "Enter a student's name to get their grade: "
            read sName
            echo "Searching for $sName's grade"
            #binary search                                                                                          
    fi
    if [[ $sName -eq "" && $continue = 0 ]]; then
            echo "End of search"
            continue=1
    fi
done

我不明白如何实施这种搜索

0 个答案:

没有答案