tatyjosy Postado Novembro 23, 2011 Denunciar Share Postado Novembro 23, 2011 Faça um programa que gere um vetor V contendo os 15 primeiros números inteiros múltiplos de 4, leia um valor inteiro K e, usando a pesquisa binária, verifique se existe algum elemento de V que seja igual a K. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 mJi Postado Novembro 24, 2011 Denunciar Share Postado Novembro 24, 2011 Poste o que já conseguiu fazer...primeiramente, encha o vetor com os múltiplos de 4.Sobre a pesquisa binária, há dezenas de tópicos à respeito por ae. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jotâo Postado Novembro 25, 2011 Denunciar Share Postado Novembro 25, 2011 (editado) :ninja: Pesquisar valores dos elementos de um Vetor Unidimensional Pesquisa Linear e Pesquisa Binaria de Dados de um Determinado Vetor. Nota de Info:"O processo de encontrar um determinado valor/elemento de um vetor/matriz é chamado de Pesquisa. Pesquisa Linear: consiste numa simples técnica que compara cada elemento de um vetor/matriz atraves da informação de uma elemento definido a priori como chave de pesquisa,este método funciona bem na estrutura de vetores que possui uma baixa grandeza dimensional ou com vetores não-ordenados.Entretanto, para realizar pesquisas em vetores q. possui um alto indice em sua grandeza dimensional, a pesquisa linear já se torna um pouco ineficiente.Como o problema proposto se trata de um indice superior na ordem de quinze( 15 ) elementos, então poderemos utilizar a Pesquisar Linear a principio. :o Desenvolvimento do Alghoritmo: Alghorithmo {pesquisa_linear_K_noVetor_V} /*Definição das variaveis do programa. inteiro: sub_x; //Subscrito do Vetor. constante inteiro: dim_inferior = ( 1 );///intervalo inicial do Vetor; constante inteiro: dim_superior = ( 16 );//intervalo superior: indice de 15 elementos, inteiro:vetor_inteiros[dim_superior], multiplo_de_quatro = ( 0 );//Identificação do Vetor e uma variavel para calcular os valores dos 15 primeiros multiplos de 4 utilizando o proprio valor do subscrito do vetor inteiro: valor_da_chave = ( 0 )//Variavel para capturar do usuario o valor do numero sendo ele multiplo de quatro ou não para subsequentemente realizar a pesquisa. inteiro: indice_do_elemento = ( 0 );//Variavel para receber atraves de uma funçao definida pelo programador o valor do inidice do vetor. inteiro:achar_valor_indice = ( 0 ); /*Ambiente de construçao do Vetor*/ Para:(sub_x = (dim_inferior); ate(sub_x < dim_superior); de Passo (sub_x + 1))Faça { multiplo_de_quatro(sub_x * 4); vetor_inteiros[sub_x] = (multiplo_de_quatro); } //Povoamos o vetor com os primeiros quinze multiplos de quatro. Agora construiremos uma instrução q. solicite do usuario do programa a digitalização do suposto valor pretendido. escreva:"Informe o Valor Inteiro:"; leia: valor_da_chave; //Neste instante iremos desenvolver uma função para comparar o valor digitado e capturar do vetor o valor do indice caso o numero seja igual ao do vetor. indice_do_elemento = funcao_pesquisaLinear(array_inteiros,valor_da_chave,dim_superior,achar_valor_indice); //A variaveil:achar_valor_indice ira receber atraves da funçao o valor do indice logicamente devolvendo o seu respectivo valor para a variavel indice_do_elemento. se(indice_do_elemento for diferente de ( <> ) -1)então { escreva:"O Valor encontrado no indice do vetor foi: " ::indice_do_elemento; } senão escreva:"Não foi possivel encontrar valores iguais entre a chave e o vetor!"; } //******************************************************** //Ambiente de Definicão da Função pesquisaLinear inteiro: funcao_pesquisaLinear(constante inteiro: array_Inteiros[],inteiro: valor_da_chave,inteiro:dim_superior,inteiro:achar_valor_indice) /*Observe que estamos passando o vetor em sua totalidade p/a a funçao*/ //Desenvolvemos aqui uma estrutura condicional para comparar os valores dos m.de 4 e o valor chave. inteiro: sub_n; se(vetor_Inteiros[sub_n] for igual ( == ) ao valor da chave (valor_da_chave)então { achar_valor_indice = (sub_n);//Recebendo o endereço do valores comparados,sendo verdadeiro a comparação condicional. retornar(achar_valor_indice); } senão achar_valor_indice = ( -1 ); retornar(achar_valor_indice); }//Termino da definiçao da funçao.Postei essa idéia algorithimica p/a dar uma luz quando ao desenvolvimento da lógica do negocio,caso tenha alguma dúvida no raciocinio acima poste sua dúvida, eu também estou iniciando os meus primeiros passos na programação, o que tiver ao meu alcance t.........Eu utilizo a IDE da Microsoft Visual Studio 2010 Express.Acho q. dá para desenvolver o Código e C++.Sucessos!!!!!!!!!!!!!!!!!!!Obs:Caso queira utilizar nomes identificadores para as variáveis conforme citado no seu post:" Vetor - V, Numero Inteiro como K", fique a critério; tomei a liberdade p/a facilitar ao entendimento. Editado Novembro 25, 2011 por jotâo Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
tatyjosy
Faça um programa que gere um vetor V contendo os 15
primeiros números inteiros múltiplos de 4, leia um valor inteiro
K e, usando a pesquisa binária, verifique se existe algum
elemento de V que seja igual a K.
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.