Ed
há 6 meses
Aqui está um exemplo de programa em Python que implementa a busca binária em um array de números inteiros distintos, com um menu conforme solicitado: ```python def busca_binaria(array, x): esquerda, direita = 0, len(array) - 1 while esquerda <= direita: meio = (esquerda + direita) // 2 if array[meio] == x: return meio elif array[meio] < x: esquerda = meio + 1 else: direita = meio - 1 return -1 def main(): A = [] while True: print("\nMenu:") print("1) Inserir elemento no array") print("2) Apresentar array") print("3) Informar elemento a ser buscado") print("4) Sair do programa") opcao = int(input("Escolha uma opção: ")) if opcao == 1: if len(A) < 10: elemento = int(input("Digite um elemento para inserir no array: ")) if elemento not in A: A.append(elemento) A.sort() # Mantém o array ordenado para a busca binária else: print("Elemento já existe no array.") else: print("Array já está cheio.") elif opcao == 2: print("Array:", A) elif opcao == 3: x = int(input("Informe o elemento a ser buscado: ")) posicao = busca_binaria(A, x) if posicao != -1: print(f"Elemento {x} encontrado na posição {posicao}.") else: print(f"Elemento {x} não encontrado no array.") elif opcao == 4: print("Saindo do programa.") break else: print("Opção inválida. Tente novamente.") if __name__ == "__main__": main() ``` Esse programa permite que o usuário insira elementos em um array, apresente o array, busque um elemento usando busca binária e saia do programa. A busca binária só funcionará corretamente se o array estiver ordenado, por isso o array é ordenado após cada inserção.
Libere respostas sem pagar
Ajude estudantes
Mais perguntas desse material