Logo Passei Direto
Buscar
Seja uma sequência de números inteiros (distintos) armazenados em um array A[i], 1 ≤ i ≤ n.
Apresentar um programa para realizar uma busca binária de um elemento x no array A. Considere n = 10. Esse programa deve apresentar, no mínimo, um menu com as seguintes opções: 1) Inserir elemento no array; 2) Apresentar array; 3) Informar elemento a ser buscado; 4) Sair do programa. A resposta da busca deve informar se o elemento está ou não no array e, em caso positivo, em qual a posição no array.
User badge image
Progresso com Exercícios

há 6 meses

Respostas

User badge image

Ed Verified user icon

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.

Essa resposta te ajudou?

0
Dislike0

Experimente
o Premium! 🤩

Libere respostas sem pagar

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Essa pergunta também está no material:

Mais perguntas desse material

Mais conteúdos dessa disciplina