Advertisement
Irlan

Menu Principal 2

Mar 25th, 2014
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.88 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <conio.h>
  4. #include <math.h>
  5.  
  6. using namespace std;
  7.  
  8. int main ()
  9. {
  10.     int menu;
  11.     int i,j,aux,numero[10],pesquisa, p, n, meio,inicio = 0,fim = 9;
  12.     int def=0;
  13.     string resposta;
  14.    
  15.     cout<<"Deseja preencher vetores?"<<endl;
  16.     cin>>resposta;
  17.     system("cls");  
  18.    
  19.     if(resposta=="sim")
  20.     {
  21.              for( i=0;i<10;i++){
  22.              cout<<"Digite o "<<i+1<<"o numero:"<<endl;
  23.              cin>>numero[i];
  24.              cin.ignore();
  25.              system ("CLS");}
  26.  
  27.  
  28.              cout<<"\n\n MENU PRINCIPAL \n\n";
  29.              cout<<"\n[1] - Busca Sequencial\n[2] - Busca Binaria \n[3] - Buble Sort \n[4] - Selecao \n[5] - Fim   "<<endl;
  30.              cout<<"\n\nDigite a sua opcao."<<endl;
  31.              cin>>menu;
  32.              
  33.              
  34.              
  35.  
  36.          do{
  37.          
  38.          switch(menu)
  39.          {
  40.             case 1:
  41.             {
  42.             cout<<"Digite o valor a ser encontrado."<<endl;
  43.             cin>>pesquisa;
  44.             // processamento: Método de Pesquisa Sequencial
  45.             int encontrou = 0; // flag, 0- pesquisa “mal” sucedida
  46.               //       1- pesquisa “bem” sucedida
  47.             p = 0;
  48.            
  49.             while ((p < i) && (encontrou == 0))
  50.             if (numero[p] == pesquisa)
  51.             {
  52.             encontrou = 1;      // o elemento foi encontrado
  53.             cout<<"O Valor desejado foi encontrado na posicao "<<p<<" do vetor.";
  54.             }
  55.             else
  56.             {    
  57.             p = p + 1;
  58.            
  59.             }
  60.             getch();
  61.            
  62.             }
  63.        
  64.             case 2:
  65.             {
  66.             for(i=0;i<9;i++)
  67.             for(j=i+1;j<10;j++)
  68.             if(numero[i]>numero[j])
  69.             {      
  70.            
  71.             aux=numero[i];
  72.             numero[i]=numero[j];
  73.             numero[j]=aux;
  74.             }
  75.  
  76.             cout<<"Digite o valor a ser encontrado."<<endl;
  77.             cin>>pesquisa;
  78.            
  79.             int encontrou = 0; // flag, 0- pesquisa “mal” sucedida
  80.               //       1- pesquisa “bem” sucedida
  81.          
  82.              while ((inicio <= fim) && (encontrou == 0))
  83.               {
  84.               meio = (inicio + fim) / 2;
  85.               p = 0;
  86.              
  87.               if (numero[meio] == pesquisa)
  88.              
  89.               encontrou = 1;        // o elemento foi encontrado
  90.               if (numero[meio] > pesquisa)
  91.               fim = meio - 1;       // primeira metade do vetor
  92.               else
  93.               inicio = meio + 1;
  94.                 // segunda metade do vetor
  95.  
  96.              
  97.               }
  98.              
  99.               if(encontrou==1)
  100.               cout<<"O numero foi encontrado na posicao "<<meio+1<<endl;
  101.               else
  102.               cout<<"O numero digitado nao foi encontrado."<<endl;
  103.              
  104.              
  105.      
  106.      
  107.              getch();
  108.              
  109.             }
  110.            
  111.             case 3:
  112.             {
  113.            
  114.            
  115.              for(i=0;i<9;i++)
  116.              for(j=i+1;j<10;j++)
  117.              if(numero[i]>numero[j])
  118.               {    
  119.            
  120.               aux=numero[i];
  121.               numero[i]=numero[j];
  122.               numero[j]=aux;
  123.               }
  124.                      cout <<endl;    
  125.                      cout<<"Ordem dos numeros e:"<<endl;
  126.                      for(int i = 0 ;i < 10; i++)
  127.                      cout <<"O numero  "<<numero[i]<<" na posicao "<<i+1<<endl;      
  128.                      getch();
  129.      
  130.              
  131.              getch();
  132.              
  133.              }
  134.            
  135.             case 4:
  136.             {
  137.                for (i=0; i<10; i++)
  138.                {
  139.                 int min;
  140.                 min = i;
  141.                 for (j=(i+1); j<10; j++)
  142.      
  143.                 if (numero[j] < numero[min])
  144.                 min = j;      // min = posição do menor elemento
  145.                 aux = numero[i];   // swap: troca dois elementos de posição
  146.                 numero[i] = numero[min];
  147.                 numero[min] = aux;
  148.                 }      
  149.    
  150.                 for(i=0; i<10; i++)
  151.                 cout<<"Os numeros sao "<< numero[i]<<endl;
  152.              
  153.              
  154.              
  155.              
  156.               getch();
  157.              
  158.             }
  159.            
  160.             case 5:
  161.             {
  162.                     cout<<"Voce nao quis utilizar um programa feito por Irlan Freitas Jr.\n"<<endl;
  163.                     cout<<"Os numeros que voce digitou\n"<<endl;
  164.                     for(i=0;i<10;i++)
  165.                     cout<<"Ordem de digitacao "<<numero[i]<<endl;
  166.                    
  167.                    
  168.                    
  169.                     getch();
  170.                    
  171.                    
  172.             }
  173.            
  174.            
  175.             default:
  176.             {
  177.                 cout<<"Nao tem essa opcao"<<endl;
  178.                 cin>>def;
  179.                 getch();
  180.              }
  181.          
  182.          }
  183.        
  184.         }while(def==0)
  185.          
  186.    
  187.          
  188.          
  189.     }
  190.     else
  191.     {
  192.     cout<<"Okay."<<endl;
  193.     getch();
  194.     return 0;
  195.    
  196.     }
  197.    
  198.  
  199.  
  200. getch();
  201. return 0;
  202. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement