elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Mensajes
Páginas: 1 2 [3] 4 5
21  Programación / Programación C/C++ / Alguien que me ayude a hacer este codigo mas eficiente en: 9 Marzo 2015, 01:06 am
en un menu para listar, borrar, buscar un nombre en la clase vector:

Código
  1. //
  2. #include <iostream>
  3. #include <string>          
  4. #include <vector>
  5.  
  6. using std::vector;
  7. using std::cout;
  8. using std::cin;
  9. using std::string;
  10. using std::endl;
  11.  
  12. class cEstudiante{
  13.        public:
  14.             string nomv;
  15.             cEstudiante(string vnomv) : nomv(vnomv){}//constructor
  16.      };
  17.  
  18. main(){
  19.             int run, i, j=0, k=0, cont, con;
  20.             string NomEst, BusNom, PosNom;
  21.             vector<cEstudiante> vEstudiante;
  22.  
  23.             int OpcMen, sigue = 1; //Variables para controlar el menu
  24.             do {
  25.             system("cls");
  26.     system (" color F0");
  27.             cout << "\n\n\t\t<<<<<<<<<<<<<<<<<<<<<<<<MENU>>>>>>>>>>>>>>>>>>>>>>>>>>\n" << endl;
  28.             cout << "\n\n 1 <**> INSERTAR DATOS" << endl;
  29.             cout << " 2 <**> BORRAR DATOS" << endl;
  30.             cout << " 3 <**> MOSTRAR DATOS" << endl;
  31.             cout << " 4 <**> BUSCAR DATOS" << endl;
  32.             cout << " 0 <**> SALIR" << endl << endl;
  33.             cout<<"\n\t   Ingrese su opci\242n: ";
  34.     while(!(std::cin>>OpcMen))
  35.             {
  36.      std::cin.clear();
  37.      std::string error;
  38.      std::cin>>error;
  39.      system("cls");
  40.              cout<<"\n\tLA OPCION INGRESADA NO EXISTE\n";
  41.      cout<<"\n\tIngrese su opci\242n nuevamente: ";
  42.              }
  43.         switch(OpcMen) {
  44.     case 1:
  45.                  system("cls");
  46.                  cout << "\n\nENTRE EL NOMBRE:\n " ;
  47.                  fflush(stdin);
  48.                  getline(cin, NomEst);
  49.                  system("cls");
  50.  
  51.                  do{
  52.                    run = vEstudiante.size();
  53.                    cont=0;                            
  54.                     for (i=0;i<run;i++){      
  55.                        cEstudiante runEstudiante = vEstudiante[i];
  56.                         if(runEstudiante.nomv == NomEst){
  57.                            cont++;
  58.                            }      //I f
  59.                        }      //for
  60.                       if(cont>0){
  61.                        j++;  
  62.                        system ("cls");
  63.                        cout << "\n\nESTE NOMBRE YA EXISTE!!!" << endl;
  64.                        cout << "\n\nFAVOR DIGITAR OTRO NOMBRE DE ESTUDIANTE DIFERENTE\n" << endl;                                          
  65.                        system("pause");
  66.                        system ("cls");
  67.                        } cont=0;
  68.                  }while(cont>0);                          
  69.  
  70.                 vEstudiante.push_back(cEstudiante(NomEst));
  71.                 if(j==1) {
  72.                 vEstudiante.erase(vEstudiante.begin()+i);
  73.                  }
  74.                 j=0;                            
  75.                 break;
  76.  
  77.     case 2:
  78.                   system ("cls");
  79.                   cout << "\nAQUIEN DESEA BORRAR :\n ";
  80.                   cin >> PosNom;
  81.                      for (i=0;i<run;i++){      //for inicio
  82.                       cEstudiante runEstudiante = vEstudiante[i];    
  83.                       if(runEstudiante.nomv == PosNom){
  84.                          k++;                    
  85.                          cout << "\n\nEL NOMBRE \n" << PosNom;
  86.                          vEstudiante.erase(vEstudiante.begin()+i);
  87.                  cout << " FUE BORRADO CON EXITO!!!\n" << endl;
  88.                           }                          
  89.                          }  //fin for
  90.                         if(k==0){
  91.                           cout << "\n ESTE NOMBRE NO EXITE  !!!\n" << endl;
  92.                          }
  93.                           k=0;
  94.                           system("pause");  
  95.                           system(" CLS");                            
  96. break;
  97.     case 3:
  98.   system ("cls");
  99.                   run = vEstudiante.size();
  100.                   cout << "\n\nNOMBRE: \n" << endl;
  101.  
  102.                     for (i=0;i<run;i++){
  103.                       cEstudiante PrintEstudiante = vEstudiante[i];
  104.                         cout<<PrintEstudiante.nomv<<"\t "<<endl;
  105.                        }
  106.                         system("pause");  
  107.                         system ("cls");
  108. break;
  109.                 case 4:
  110.                   system("cls");
  111.                   cout<<"\n\nAQUIEN DESEA BUSCAR:  ";
  112.                   fflush(stdin);
  113.                   getline(cin, BusNom);
  114.  
  115.                   run = vEstudiante.size();
  116.                   con=0;
  117.                   system("cls");              
  118.                   for (i=0;i<run;i++){      //inicio for
  119.                     cEstudiante runEstudiante = vEstudiante[i];
  120.                     if(runEstudiante.nomv == BusNom){
  121.                     cout << "\nRESUTADO: \n\n" << endl;
  122.                     cEstudiante PrintEstudiante = vEstudiante[i];
  123.                     cout << "NOMBRE  " << " POSICION\n" << endl;
  124.                     cout <<PrintEstudiante.nomv<<"\t #"<< i+1<< endl<< endl;
  125.                     con++;        
  126.                   system("pause");
  127.                     }
  128.                     }   // fin for
  129.                   system("cls");
  130.                     if(con==0) {
  131.                     cout << "\nESTE NOMBRE NO EXISTE : \n\n" << endl;
  132.                     system("pause");}
  133.                     con=0;  
  134. break;
  135.                 case 0:
  136.  sigue = 0;
  137. break;
  138.                 default:
  139.                            cout<<"\t\tLA OPCION INGRESADA NO EXISTE\n";
  140.                        system("cls");
  141. }
  142. } while(sigue);      
  143. }
  144.  
  145.  

este es mi codigo quiero hacerlo mas eficiente, controlar los nombres en mayusculas y minusculas y todo eso porfa.
22  Programación / Programación C/C++ / Re: Ayuda... Necesito imprimir los caracteres que mas se repiten de una cadena en: 2 Marzo 2015, 01:54 am
alguien que me de una manito ya tengo el programa que imprime el numero de veces que se repite una letra. Solo me hace falta comparar cual es mayor y no me sale.

Código
  1. bool continuar = true;
  2.                         int contador=0,cont_letras=0;
  3.                         std::string c;
  4.                         for(int i=0; CadCar[i] !='\0';i++){
  5.                           for(int j=0; c[j] !='\0';j++){
  6.                              if(CadCar[i]==c[j]){
  7.                                continuar = false;
  8.                                break;
  9.                              }        
  10.                           }
  11.                           if(continuar = true){
  12.                             for (int k = 0; CadCar[k] != '\0'; k++){
  13.                                 if(CadCar[i]==CadCar[k]){
  14.                                   contador++;
  15.                                   }
  16.                                 }
  17.                                 std::cout << CadCar[i] << " se encuentra " << contador << " veces!" << std::endl;
  18.                                 contador=0;
  19.                             }
  20.                           c[cont_letras] = CadCar[i];
  21.                           cont_letras++;
  22.                           continuar = true;
  23.                           }
  24.                           }
  25.  
23  Programación / Programación C/C++ / Re: Ayuda... Necesito imprimir los caracteres que mas se repiten de una cadena en: 2 Marzo 2015, 00:54 am
Analisando tu codigo mira lo que logre....

Código
  1. for(int i = 0; i < CadCar.length(); i++) {
  2.                         for(int j = i+1; j < CadCar.length(); j++) {
  3.                          if(CadCar[j] == CadCar[i]) {
  4.                          std::cout << "La letra " << CadCar[i] << " está repetida" << std::endl;
  5.                          // quiero agragar un contador para cada palabraa  
  6.                               }
  7.                              }
  8.                             }
  9.                          }
  10.  

me dice las palabras repetidas pero no las veces que se repiten jajajajjaajajaj
24  Programación / Programación C/C++ / Re: Ayuda... Necesito imprimir los caracteres que mas se repiten de una cadena en: 1 Marzo 2015, 23:55 pm
bueno esta bien brother gracias por la sugerencias mira:

Código
  1. void ImpCaractRepetidos(){
  2.                         int abecedario[26];
  3.                         int i,caracter;
  4.                         for( i=0; i<26; i++){
  5.                                 abecedario[i]=0;
  6.                                 }
  7.                         while (CadCar[i]!='\0'){
  8.                                 i++;
  9.                                 caracter = tolower(CadCar[i]);
  10.                                 if ( caracter >= 97 && caracter <= 122)
  11.                                   abecedario[caracter - 97]++;
  12.                                   }
  13.                           for ( i = 0; i < 26; i++ )
  14.                           {
  15.                           std::cout<<"La Letra "<< ((char)i+97) <<" Aparecio "<< abecedario[i] <<" Veces\n";
  16.                           }
  17.                       }
  18.  

y aun me da error jejejej
25  Programación / Programación C/C++ / Re: Ayuda... Necesito imprimir los caracteres que mas se repiten de una cadena en: 1 Marzo 2015, 22:54 pm
mira asi hice la funcion ahora pero no me imprime nada  :-[

Código
  1. void ImpCaractRepetidos(){
  2.                         int abecedario[26];
  3.                         int i,caracter;
  4.                         for( i=0; i<26; i++){
  5.                                 abecedario[i]=0;
  6.                                 }
  7.                         while (CadCar[i]!='\0'){
  8.                                 caracter = tolower(CadCar[i]);
  9.                                 if ( caracter >= 97 && caracter <= 122)
  10.                                   abecedario[caracter - 97]++;
  11.                                   }
  12.                           for ( i = 0; i < 26; i++ )
  13.                           {
  14.                           std::cout<<"La Letra "<< abecedario[i] <<"Aparecio"<< i+97<<"Veces\n";
  15.                           }
  16.                       }
  17.  
26  Programación / Programación C/C++ / Ayuda... Necesito imprimir los caracteres que mas se repiten de una cadena en: 1 Marzo 2015, 21:40 pm
Tengo esta funcion pero no me tira todos los caracteres repetidos
Código
  1. void ImpCaractRepetidos(){
  2.                         int contador=0;
  3.                         int aux=0;
  4.                         char c;
  5.                         for(int i=0; CadCar[i]!='\0';i++){
  6.                           for(int j=1; j<CadCar.length();j++){
  7.                              if(CadCar[i]==CadCar[j]){
  8.                                contador++;
  9.                              }        
  10.                           }
  11.                           if(contador > aux){
  12.                              aux = contador;
  13.                              c = CadCar[i];
  14.                              contador = 0;        
  15.                                       }
  16.                              else
  17.                                   contador = 0;
  18.  
  19.                         }
  20.                         std::cout<<"\nEn el texto hay "<<aux<<" caracteres repetidos\n";
  21.                         std::cout<<" y son "<<c;
  22.                       }
  23.  

Gracias por la ayuda
27  Programación / Programación C/C++ / Re: imprimir una palabra vertical paralela a la otra en: 24 Febrero 2015, 04:11 am
Gracias hermano y yo tampoco una librería estándar para controlar la consola, pero veré que hago


Enviado desde mi iPhone utilizando Tapatalk
28  Programación / Programación C/C++ / imprimir una palabra vertical paralela a la otra en: 24 Febrero 2015, 03:34 am
tengo este codigo y quiero imprimir

h        c          e
o        o          s
l         m         t
a        o          a
                     s

Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. main(){
  6.       string c="hola como estas";
  7.       getline(cin,c);
  8.       for(int i=0;c[i]!='\0';i++){
  9.               cout<<endl<<c[i];
  10.           if(i==-1 || c[i] == ' ' && c[i+1] != ' '){
  11.             cout<<c[0+2];
  12.             cout<<"\t\t"<<c[i];
  13.            }    
  14.           }
  15.       system("pause");
  16.       }
  17.  
29  Programación / Programación C/C++ / Re: Menu string en: 24 Febrero 2015, 02:22 am
mira este menu y dime si te parece correcto:

Código
  1. #include <iostream>
  2.  
  3. main(){
  4. int OpcMen;
  5. int sigue = 1;
  6. do {
  7. system("cls");
  8. system("color 9F");
  9. std::cout<<"\TITULO AQUI\n"<<std::endl;
  10. std::cout<<"\t1.  "<<std::endl;
  11. std::cout<<"\t2.  "<<std::endl;
  12. std::cout<<"\t3.  "<<std::endl;
  13. std::cout<<"\t0.  Pulse cero Salir"<<std::endl<<std::endl;
  14. std::cout<<"\t    Ingrese su opci\242n: ";
  15.        while(!(std::cin>>OpcMen))
  16.           {
  17.    std::cin.clear();
  18.    std::string error;
  19.    std::cin>>error;
  20.            std::cout<<"\n\tLA OPCI\340N INGRESADA NO EXISTE"<<std::endl;
  21.     std::cout<<"\n\tIngrese su opci\242n nuevamente: ";
  22.           }
  23. switch(OpcMen) {
  24. case 1:
  25. //lo que quieres que haga en esta opcion
  26. break;
  27. case 2:
  28. //lo que quieres que haga en esta opcion
  29. break;
  30. case 3:
  31. //lo que quieres que haga en esta opcion
  32. break;
  33. case 0:
  34. sigue = 0;
  35. break;
  36. default:
  37. std::cout<<"\t\tLA OPCI\340N INGRESADA NO EXISTE"<<std::endl;
  38.    system("pause");
  39. }
  40. } while(sigue);
  41. }
  42.  

ese es un menu con do-while usando switch
30  Programación / Programación C/C++ / Re: error logico ayuda con este programa en: 23 Febrero 2015, 06:19 am
Gracias amigo. ;-) ;-)
Páginas: 1 2 [3] 4 5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines