Busca e ordenação de números
Publicado por Luciano Alexandre de Farias Silva (última atualização em 10/04/2013)
[ Hits: 7.859 ]
Homepage: http://www.tecsource.blogspot.com.br/
Um pequeno algoritmo em C++ com duas funções: Uma para ordenar um Vetor de números e outra, para buscar um número qualquer nesse Vetor.
#include<iostream>
using namespace std;
float busca(float num, float n, float x[100]) ;
void bubblesort(int n, float x[100]);
int main(void) {
float x[100], num;
int n, i;
bool achou;
do {
cout << "Quantos números?" <<endl;
cin >> n;
} while(n <= 0 || n > 100);
cout << "Digite os números: "<<endl;
for(i = 0; i <= n-1; i++) {
cin >> x[i];
}
bubblesort(n, x);
cout << "Vetor ordenado: " <<endl;
for(i = 0; i < n ; i++){
cout << x[i] <<" ";
}
cout << "\nDigite o número que procura: "<<endl;
cin >> num;
achou = busca(num, n , x);
if(achou){
cout << "Número encontrado.";
}else{
cout << "Número não encontrado";
}
return 0;
}
float busca(float num, float n, float x[100] ) {
int meio, alto, baixo;
alto = n - 1;
baixo = 0;
bool achou = false;
while( baixo <= alto && (!achou)){
meio = (baixo + alto)/2;
if(num < x[meio]){
alto = meio - 1;
} else if(num > x[meio]){
baixo = meio + 1;
}else {
achou = true;
}
}
return achou;
}
void bubblesort( int n, float x[100]){
float aux;
int j, i;
for(i = 0; i < n-1; i++){
for(j=i+1; j < n ; j++){
if(x[i] > x[j]){
aux = x[i];
x[i] = x[j];
x[j] = aux;
}
}
}
}
Função switch q armazena sequencias
bolinha que rebate nas bordas da janela (com SDL)
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como quebrar senha usando john the ripper
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Alguém já testou o novo COSMIC Desktop? O que achou? (3)
Portal de autenticação em loop (0)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (0)









