Ir ao conteúdo
  • Cadastre-se

EXERCÍCIO PESQUISA BINÁRIA


Felipeduarte13

Posts recomendados

1.    Exercício de Pesquisa Binária

 

·                 Defina um vetor FIBO (inteiro sem sinal - com 30 ocorrências).

·                 Coloque os primeiros 25 números da série de Fibonacci. (os dois primeiros são o 0 (zero) e o 1 (um)

·                 Mostre o primeiro e o último elemento definido;

·                 Depois receba um numero inteiro pelo teclado

·                 Através da Pesquisa Binária diga se o numero entrado está ou não dentro do vetor que você gerou.

·                 Se estiver, dizer em qual posição.

·                 Se não estiver - envie uma mensagem.

·                 Parar se o número for igual a zero. 

Link para o comentário
Compartilhar em outros sites

então, separei a pesquisa binaria numa outra função, e o programa ficou assim:

 

#include <stdio.h>
#include <stdlib.h>
 
int meio;
 
int pesquisabinaria (int FIBO[25],int n,int ini,int fim){
 
     while (ini <= fim)
     {
          meio = (ini + fim)/2;
          if (n == FIBO[meio])
               return meio;
          else if (n < FIBO[meio])
               fim = meio-1;
          else
               ini = meio+1;
     }
     return 0;}
 
 
int main (){
 
int FIBO[30];
int i,n,ini,fim;
bool teste=true;
//Para preencher a serie de fibonanaci
FIBO[0]=0;
FIBO[1]=1;
for (i=2;i<25;i++){
    FIBO=FIBO[i-1]+FIBO[i-2];
}
 
while (n!=0){
printf("\nINFORME O NUMERO QUE DESEJA ENCONTRAR OU ZERO PARA SAIR: ");
scanf("%d",&n);
if (n==0){
    continue;
}
ini=0;
fim=24;
 
 
if (pesquisabinaria(FIBO,n,ini,fim)!=0){
    printf("\nNUMERO ENCONTRADO NO VETOR, NA POSICAO %d",meio);
}
else{
    printf("\nNAO FOI ENCONTRADO ESTE NUMERO NO VETOR");
}
}
printf("\nVOCE SAIU DO PROGRAMA");
return 0;
}
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...