amahht Postado Junho 18, 2015 Denunciar Share Postado Junho 18, 2015 (editado) Boa noite! Se fizer certinho eu pago 20 conto, só mandar a conta e agencia q eu deposito... Aqui está o problema: EM C++ Preencher um vetor de 50 elementos inteiros com números aleatórios. Ordenar o vetor em ordem crescente, utilizando o método BubbleSort, e exibi-lo; Ordenar o vetor em ordem decrescente, utilizando o método BubbleSort, e exibi-lo; Valeu! Editado Junho 18, 2015 por Jhonas Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Junho 18, 2015 Denunciar Share Postado Junho 18, 2015 amigo, acho que dar uma pesquisada no google resolve o seu problema... é só procurar http://www.cprogressivo.net/2013/03/Como-gerar-numeros-aleatorios-em-C-com-a-rand-srand-e-seed.html http://programasemcmaismais.blogspot.com.br/2012/11/para-criar-um-vetor-com-10-espacos-com.html abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 == Douplus == Postado Junho 19, 2015 Denunciar Share Postado Junho 19, 2015 #include <iostream> using std::cout; using std::endl; #include <vector> #include <algorithm> #include <cstdlib> #include <ctime> template<class T> class Ordenador { protected: virtual bool temQueTrocar(T &alvo, T &outro)=0; public: virtual void ordenarVetor(std::vector<T> &v) { for(typename std::vector<T>::iterator it1 = v.begin(); it1 != v.end(); ++it1) { for(typename std::vector<T>::iterator it2 = it1; it2 != v.end(); ++it2) { if (temQueTrocar(*it1, *it2)) { iter_swap(it1, it2); } } } } }; template<class T> class OrdenadorCrescente : public Ordenador<T> { protected: virtual bool temQueTrocar(T &alvo, T &outro) { return (alvo > outro); } }; template<class T> class OrdenadorDecrescente : public Ordenador<T> { protected: virtual bool temQueTrocar(T &alvo, T &outro) { return (alvo < outro); } }; std::vector<int> *criarVetor(int qtde, int maior) { std::vector<int> *v = new std::vector<int>(); srand(time(0)); for (int i = 0; i < qtde; i++) { v->push_back((rand() % maior) + 1); } return v; } void mostrarVetor(std::vector<int> &v) { for (std::vector<int>::iterator it = v.begin(); it != v.end(); it++) { cout<<(*it)<<' '; } cout<<endl; } int main(void) { std::vector<int> *v = criarVetor(50, 100); cout<<"Vetor original: \n"; mostrarVetor(*v); cout<<endl; OrdenadorCrescente<int> ordCresc; ordCresc.ordenarVetor(*v); cout<<"Vetor em ordem crescente: \n"; mostrarVetor(*v); cout<<endl; OrdenadorDecrescente<int> ordDec; ordDec.ordenarVetor(*v); cout<<"Vetor em ordem crescente: \n"; mostrarVetor(*v); cout<<endl; return 0; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
amahht
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.