Example #1
0
def main(d):
    min_v = bin_search.min_value(d)
    max_v = bin_search.max_value()
    result = bin_search.bin_search(min_v, max_v, d) #number of sensors and their positions
    print("area: ", result[1][0])
    print("x: ", result[1][1][0])
    print("y: ", result[1][1][1])
    print("alpha: ", result[1][1][2])


    positions = result[1][1][0:3] #[0] - x, [1] - y, [2] - alpha
    tab = result[1][1][3]
    number = result[0]

    print(number, " - number of sensors")

    for i in range(number):
        if positions[2][i] == 0:
            tab[positions[1][i]][positions[0][i]] = '^'
        if positions[2][i] == 1:
            tab[positions[1][i]][positions[0][i]] = '<'
        if positions[2][i] == 2:
            tab[positions[1][i]][positions[0][i]] = 'v'
        if positions[2][i] == 3:
            tab[positions[1][i]][positions[0][i]] = '>'


    for i in range(len(tab)):
        for j in range(len(tab[0])):
            print(tab[i][j], " ", end='')
        print()
Example #2
0
def search():
    try:
        number = int(n_entry.get())

        result = bin_search(number, lst)

        r_entry.delete(0, END)
        r_entry.insert(0, result)

        t1_entry.delete(0, END)
        t1_entry.insert(0, lin_time(number))

        t2_entry.delete(0, END)
        t2_entry.insert(0, bin_time(number))
    except ValueError:
        return
Example #3
0
def processing_line(moscow_map_data, line, words):
    line_save = line
    line = proccessing_fulladdress(line, words)
    if line == -1: return "Incorrect line%s" % line_save
    else:
        line_array = line.strip("\n").split("\t")
        id_ = line_array[0]
        address = line_array[1:5]
        year = line_array[5]
        type_ = line_array[6]
        floors = line_array[7]
        find_pos = bin_search(moscow_map_data, address)
        if find_pos != -1:
            if moscow_map_data[find_pos][4] != "None":
                year = moscow_map_data[find_pos][4]
            if moscow_map_data[find_pos][5] != "None":
                type_ = moscow_map_data[find_pos][5]
            if moscow_map_data[find_pos][6] != "None":
                floors = moscow_map_data[find_pos][6]
        return [id_, year, type_, floors]
def main(d):
    min_v = bin_search.min_value(d)
    max_v = bin_search.max_value()
    print(bin_search.bin_search(min_v, max_v, d))
    def test_bin_search(self):
        # Test None input
        res = bin_search(self.arr2, self.s1)
        self.assertEqual(res, self.res2)

        # Test empty table
        res = bin_search(self.arr3, self.s1)
        self.assertEqual(res, self.res2)

        # Test strange input
        res = bin_search(self.arr4, self.s1)
        self.assertEqual(res, self.res2)

        # Testing length1 array
        res = bin_search(self.arr5, self.s51)
        self.assertEqual(res, self.res51)

        res = bin_search(self.arr5, self.s52)
        self.assertEqual(res, self.res52)

        # longer array easy
        res = bin_search(self.arr1, self.s1)
        self.assertEqual(res, self.res1)

        # longer array has to search / odd
        res = bin_search(self.arr6, self.s61)
        self.assertEqual(res, self.res61)

        res = bin_search(self.arr6, self.s62)
        self.assertEqual(res, self.res62)

        res = bin_search(self.arr6, self.s63)
        self.assertEqual(res, self.res63)

        # longer array has to search / even
        res = bin_search(self.arr7, self.s71)
        self.assertEqual(res, self.res71)

        res = bin_search(self.arr7, self.s72)
        self.assertEqual(res, self.res72)

        res = bin_search(self.arr7, self.s73)
        self.assertEqual(res, self.res73)
    def test_bin_search(self):
        # Test None input
        res = bin_search(self.arr2, self.s1)
        self.assertEqual(res, self.res2)

        # Test empty table
        res = bin_search(self.arr3, self.s1)
        self.assertEqual(res, self.res2)

        # Test strange input
        res = bin_search(self.arr4, self.s1)
        self.assertEqual(res, self.res2)

        # Testing length1 array
        res = bin_search(self.arr5, self.s51)
        self.assertEqual(res, self.res51)

        res = bin_search(self.arr5, self.s52)
        self.assertEqual(res, self.res52)

        # longer array easy
        res = bin_search(self.arr1, self.s1)
        self.assertEqual(res, self.res1)

        # longer array has to search / odd
        res = bin_search(self.arr6, self.s61)
        self.assertEqual(res, self.res61)

        res = bin_search(self.arr6, self.s62)
        self.assertEqual(res, self.res62)

        res = bin_search(self.arr6, self.s63)
        self.assertEqual(res, self.res63)

        # longer array has to search / even
        res = bin_search(self.arr7, self.s71)
        self.assertEqual(res, self.res71)

        res = bin_search(self.arr7, self.s72)
        self.assertEqual(res, self.res72)

        res = bin_search(self.arr7, self.s73)
        self.assertEqual(res, self.res73)
Example #7
0
def bin_time(number):
    start_time = time.clock()
    result = bin_search(number, lst)
    return time.clock() - start_time