Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <conio.h>
- #include <math.h>
- using namespace std;
- int main ()
- {
- int menu;
- int i,j,aux=0,numero[10],pesquisa, p, n, meio,inicio = 0,fim = 9,encontrou;
- string def = "sim";
- string resposta;
- cout<<"Deseja preencher vetores?"<<endl;
- cin>>resposta;
- system("cls");
- if(resposta=="sim")
- {
- for( i=0;i<10;i++){
- cout<<"Digite o "<<i+1<<"o numero:"<<endl;
- cin>>numero[i];
- system ("CLS");}
- while(def=="sim")
- {
- cout<<"\n\n MENU PRINCIPAL \n\n";
- cout<<"\n[1] - Busca Sequencial\n[2] - Busca Binaria \n[3] - Buble Sort \n[4] - Selecao \n[5] - Fim "<<endl;
- cout<<"\n\nDigite a sua opcao."<<endl;
- cin>>menu;
- system("CLS");
- switch(menu)
- {
- case 1:
- {
- cout<<"Digite o valor a ser buscado."<<endl;
- cin>>pesquisa;
- // processamento: Método de Pesquisa Sequencial
- int encontrou = 0; // flag, 0- pesquisa “mal” sucedida
- // 1- pesquisa “bem” sucedida
- p = 0;
- while ((p < i) && (encontrou == 0))
- if (numero[p] == pesquisa)
- {
- encontrou = 1; // o elemento foi encontrado
- cout<<"O Valor desejado foi encontrado na posicao "<<p+1<<" do vetor.";
- }
- else
- {
- p = p + 1;
- }
- if(numero[p]!=pesquisa)
- cout<<"O valor nao foi encontrado."<<endl;
- cout<<"Deseja reiniciar?"<<endl;
- cin>>def;
- system("CLS");
- break;
- }
- case 2:
- {
- for(i=0;i<9;i++)
- for(j=i+1;j<10;j++)
- if(numero[i]>numero[j])
- {
- aux=numero[i];
- numero[i]=numero[j];
- numero[j]=aux;
- }
- cout<<"Digite o valor a ser encontrado."<<endl;
- cin>>pesquisa;
- int encontrou = 0; // flag, 0- pesquisa “mal” sucedida
- // 1- pesquisa “bem” sucedida
- while ((inicio <= fim) && (encontrou == 0))
- {
- meio = (inicio + fim) / 2;
- if (numero[meio] == pesquisa)
- encontrou = 1;
- // o elemento foi encontrado
- if (numero[meio] > pesquisa)
- fim = meio - 1; // primeira metade do vetor
- else
- inicio = meio + 1;
- // segunda metade do vetor
- }
- if(encontrou==1)
- cout<<"O numero foi encontrado na posicao "<<meio+1<<endl;
- if(encontrou != 1)
- cout<<"O numero digitado nao foi encontrado em nenhuma posicao "<<meio+1<<endl;
- cout<<"Deseja reiniciar?"<<endl;
- cin>>def;
- system("CLS");
- getch();
- break;
- }
- case 3:
- {
- for(i=0;i<9;i++)
- for(j=i+1;j<10;j++)
- if(numero[i]>numero[j])
- {
- aux=numero[i];
- numero[i]=numero[j];
- numero[j]=aux;
- }
- cout <<endl;
- cout<<"Ordem dos numeros e:"<<endl;
- for(int i = 0 ;i < 10; i++)
- cout <<"O numero "<<numero[i]<<" na posicao "<<i+1<<endl;
- getch();
- cout<<"Deseja reiniciar?"<<endl;
- cin>>def;
- system ("CLS");
- break;
- }
- case 4:
- {
- for (i=0; i<10; i++)
- {
- int min;
- min = i;
- for (j=(i+1); j<10; j++)
- if (numero[j] < numero[min])
- min = j; // min = posição do menor elemento
- aux = numero[i]; // swap: troca dois elementos de posição
- numero[i] = numero[min];
- numero[min] = aux;
- }
- for(i=0; i<10; i++)
- cout<<"Os numeros sao "<< numero[i]<<endl;
- cout<<"Deseja reiniciar?"<<endl;
- cin>>def;
- system ("CLS");
- break;
- }
- case 5:
- {
- cout<<"Voce nao quis utilizar um programa feito por Irlan Freitas Jr.\n"<<endl;
- def="nao";
- break;
- }
- default:
- {
- cout<<"Nao tem essa opcao"<<endl;
- cout<<"Deseja reiniciar?"<<endl;
- cin>>def;
- system ("CLS");
- break;
- }
- }
- }
- }
- else
- {
- cout<<"Okay."<<endl;
- getch();
- return 0;
- }
- getch();
- return 0;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement