Задача по бинарному поиску
Download 18.83 Kb.
|
Ганиев Азиз
- Bu sahifa navigatsiya:
- Задача по бинарному поиску
- Задача по отсортировку массива insertsort
- Задача по отсортировку массива bublesort
Задача по линейному поиску def linear_search(arr, target): for i in range(len(arr)): if arr[i] == target: return i return -1 my_list = [4, 2, 7, 1, 9, 5] target_number = int(input("Введите число для поиска: ")) result = linear_search(my_list, target_number) if result != -1: print(f"Число {target_number} найдено в индексе {result}.") else: print("Число не найдено.") Задача по бинарному поиску def find_square_root(x, epsilon): left, right = 0, x while True: mid = (left + right) / 2 if abs(mid * mid - x) < epsilon: return mid elif mid * mid < x: left = mid else: right = mid # Пример использования x = 16 # Искомое число epsilon = 0.01 # Заданная точность result = find_square_root(x, epsilon) print(f"Приближенный корень числа {x} с точностью {epsilon} равен {result}") Задача по отсортировку массива insertsort def insertion_sort(arr): for i in range(1, len(arr)): key = arr[i] j = i - 1 while j >= 0 and key < arr[j]: arr[j + 1] = arr[j] j -= 1 arr[j + 1] = key # Пример использования my_list = [12, 11, 13, 5, 6] print("Исходный массив:", my_list) insertion_sort(my_list) print("Отсортированный массив:", my_list) Задача по отсортировку массива bublesort def bubble_sort(arr): n = len(arr) for i in range(n): for j in range(0, n - i - 1): if arr[j] > arr[j + 1]: arr[j], arr[j + 1] = arr[j + 1], arr[j] # Пример использования my_list = [64, 34, 25, 12, 22, 11, 90] print("Исходный массив:", my_list) bubble_sort(my_list) print("Отсортированный массив:", my_list) Светофор # Получение времени горения светофора от пользователя r = int(input("Введите время горения красного света (в секундах): ")) g = int(input("Введите время горения зеленого света (в секундах): ")) y = int(input("Введите время горения желтого света (в секундах): ")) # Вычисление общего времени горения светофора total_time = r + g + y # Вычисление количества циклов для каждого цвета red_cycles = r / total_time green_cycles = g / total_time yellow_cycles = y / total_time # Вывод результатов print(f"Общее время горения светофора: {total_time} секунд.") print(f"Количество красных циклов: {red_cycles:.2f}.") print(f"Количество зеленых циклов: {green_cycles:.2f}.") print(f"Количество желтых циклов: {yellow_cycles:.2f}.") Download 18.83 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling