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

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / ayuda herencia c++ en: 2 Noviembre 2016, 23:50 pm
hola, disculpen la molestia pero necesito auyda con la materia de herencia y polimorfismo (mas herencia), lo que sucede es que hice un header llamado sistema.h y debo hacer 3 clases derivadas de la clase bus (vienen siendo semi cama, premium y salon cama) . en estas clases, tienen los mismos atributos pero solo se diferencian en la capacidad que tienen (semi cama 45, premium 20 y 30 salon cama) y no se como hacer que la otra clase sistema (que es un vector de bus) diferencie cuando es salon cama, semi cama y premium .  les agradeceria mucho su ayuda


Código
  1. #ifndef SISTEMA_H_
  2. #define SISTEMA_H_
  3.  
  4. class Bus {
  5. protected:
  6.    std::vector<std::string> asientos_;
  7.    std::string tipo_;
  8.    std::string origen_;
  9.    std::string destino_;
  10.    int precio_;
  11.    int hora_;
  12. public:
  13.    Bus(std::string tipo, size_t asientos, std::string origen, std::string destino, int precio, int hora) {
  14.        for (size_t i = 0; i < asientos; i++)
  15.        {
  16.            asientos_.push_back("");
  17.        }
  18.        tipo_ = tipo;
  19.        origen_ = origen;
  20.        destino_ = destino;
  21.        precio_ = precio;
  22.        hora_ = hora;
  23.    }
  24.  
  25.    void listarAsientos() {
  26.        std::cout << "Asientos disponibles: ";
  27.        for (size_t i = 0; i < asientos_.size(); i++)
  28.        {  
  29.            if(asientos_[i].size() == 0)
  30.            {
  31.                std::cout << i+1 << " ";
  32.            }
  33.        }
  34.        std::cout << std::endl;
  35.  
  36.        std::cout << "Asientos vendidos: ";
  37.        for (size_t i = 0; i < asientos_.size(); i++)
  38.        {
  39.            if(asientos_[i].size() != 0)
  40.            {
  41.                std::cout << i+1 << ": " << asientos_[i] << std::endl;
  42.            }
  43.        }
  44.        std::cout << std::endl;
  45.    }
  46.  
  47.    bool venderAsiento(int asiento, std::string rut) {
  48.        if(asientos_[asiento-1].size() == 0) {
  49.            asientos_[asiento-1] = rut;
  50.            return true;
  51.        }
  52.        return false;
  53.    }
  54.  
  55.    void info() {
  56.        std::cout << origen_ << "\t" << destino_ << "\t" << tipo_ << "\t" << hora_;
  57.    }
  58. };
  59.  
  60.  
  61.  
  62.  
  63. class semi_cama:public Bus {
  64. public:
  65.  
  66. }
  67.  
  68.  
  69. };
  70. class Sistema {
  71. protected:
  72.    std::vector<Bus> buses_;
  73. public:
  74.    Sistema(int buses) {
  75.        buses_.reserve(buses);
  76.    }
  77.  
  78.    void agendarBus(Bus bus) {
  79.        buses_.push_back(bus);
  80.    }
  81.  
  82.    void listarAgenda() {
  83.        std::cout << "Selector\tOrigen\t\tDestino\t\tTipo\t\tHora" << std::endl;
  84.        for (size_t i = 0; i < buses_.size(); i++)
  85.        {
  86.            std::cout << i+1 << "\t\t";
  87.            buses_[i].info();
  88.            std::cout << std::endl;
  89.        }
  90.    }
  91.  
  92.    void listarBus(int bus) {
  93.        buses_[bus-1].listarAsientos();
  94.    }
  95.  
  96.    bool venderPasaje(int bus, int asiento, std::string rut) {
  97.        if (buses_[bus-1].venderAsiento(asiento, rut) == false) {
  98.            std::cerr << "El asiento ya está vendido.\n";
  99.            return false;
  100.        }
  101.        return true;
  102.    }
  103. };
  104.  
  105. #endif
  106.  
2  Programación / Programación C/C++ / ayuda clases/arreglos dinamicos c++ en: 1 Octubre 2016, 23:16 pm
buenas, en la uni comenzamos a ver clases y memoria dinamica en c++, y nos pidieron crear un tipo de dato en una clase que maneja operaciones con un elemento string ingresado por el usuario (es como hacer otro tipo de dato similar a string que haga operaciones de insertar el string enviado por parametro al objeto, eliminar string, preguntar si pertenece , union ,interseccion y diferencia entre ellos).

hice el ver si esta adentro o no, pero no logro entender como hacer el insertar un string por parametro a un objeto de arreglo char. mi code es asi:

Código
  1. #include <iostream>
  2. #include <cassert>
  3. #include <cstdlib>
  4. #include <string.h>
  5. #include<vector>
  6.  
  7. using namespace std;
  8.  
  9. class setstring{
  10. char *objetos;
  11. int cantidad;
  12. int espacio;
  13. public:
  14. setstring(){     //hice un constructor por defecto
  15. espacio=1;
  16. objetos = new char [espacio];
  17. objetos [0]='\0';
  18. cantidad=0;
  19. }
  20. ~setstring () {
  21. delete [ ]objetos;}
  22.  
  23.  
  24. bool insert (string s)   //mi problema es aqui, no se que hacer.
  25. {
  26.  if(in(s)==false){
  27.  
  28. vector<string> obj ={objetos};          
  29. vector <string> obj2={s};
  30.  obj.push_back(s);
  31.  return true;}
  32. }
  33.  
  34. bool in(string s){
  35. if(strstr(objetos,s.c_str())!=0){
  36. return true;
  37. }
  38. else{
  39. return false;
  40. }
  41. }
  42. };
  43.  
3  Programación / Programación C/C++ / Re: busqueda de palabras en un fichero en: 30 Junio 2016, 04:21 am
Déjà vu



Aqui esta este tema:

http://foro.elhacker.net/programacion_cc/ayuda_urgenteee-t454456.0.html

No se si eres tu o otro de tus compañeros.

Por cierto que cual es tu duda?

Sabes leer el archivo?

Declarar las palabras a buscar?

Iterar en la cadenas a buscar?

sabes que es un  string?

No es que no te quiera ayudar pero no se por donde empezar, no se si manejas strtok, no se si sabes declarar un arreglo de strings (Que es lo que necesitas)

Te dejo uno de mis videos de programacion en C no en C++



Saludos



es otra persona , mi duda central seria el rastrear las palabras positivas con las palabras de tweets, no se usar la funcion strtok correctamente y la parte de hacer el ciclo para buscar las palabras no se como escribirlo , esto es lo que llevo hasta ahoora

Código
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cstring>
  4. #include <cstdlib>
  5. #include <stdio.h>
  6.  
  7. using namespace std;
  8.  
  9. string lecturaycopia(ifstream &a);
  10. int cuentabebidas( string contenido, string palabra);
  11. int cuentapalabras ();
  12. int mayormencion ();
  13. int main()
  14. {
  15. string bebidas []={"COCA-COLA","COCA COLA","BEER","GIN","JUICE","SUKO","GUARANA","MOJITO","RON","TEQUILA","WINE"};
  16. string positivas []={"HOLD","GO FOR","SOUND RIGHT","GOOD","HEALTHY","GRANDE","GREAT","ENJOYING","BUY","FREE","GREATEST"};
  17. string positivas2[]={"PONG","ORGULHOSO","PLENTY","GOT","WIN","FAV","FAVORITE","FEED","BETTER","TASTE","MORE","FRESH","LOVE"};
  18. string positivas3[]={"TASTES","VENTI","PREFIERO","LIKES","LIKE","GENIAL","GOSTA","GUSTA","GUSTAS","GOSTOSO","TOMAR","CONSUMIDA"};
  19. string positivas4 []={"FRIA","ANTOJAO","TOMO","GANAS","TOMEI","GOSTOSA","SHOTS"};
  20. int b1,b2,b3,b4,b5,b6,b7,b8,b9,b10;    //variables enteras de bebidas
  21. int p,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,p16,p17,p18,p19,p20; //las variables enteras de positivos y bebidas seran puestas de p hasta p42
  22. int p21,p22,p23,p24,p25,p26,p27,p28,p29,p30,p31,p32,p33,p34,p35,p36,p37,p38,p39,p40,p41,p42;
  23. string contenido;                                                                                          //y b a b9 para ahorrar espacio  
  24. ifstream tweets("tweets.txt");
  25. contenido = lecturaycopia(tweets);
  26. b1 = cuentabebidas(contenido, bebidas[0]) + cuentabebidas(contenido,bebidas[1]);
  27. b2 = cuentabebidas(contenido, bebidas[2]);
  28. b3 = cuentabebidas(contenido, bebidas[3]);  
  29. b4 = cuentabebidas(contenido, bebidas[4]);
  30. b5 = cuentabebidas(contenido, bebidas[5]);
  31. b6 = cuentabebidas(contenido, bebidas[6]);
  32. b7 = cuentabebidas(contenido, bebidas[7]);
  33. b8 = cuentabebidas(contenido, bebidas[8]);
  34. b9 = cuentabebidas(contenido, bebidas[9]);
  35. b10 = cuentabebidas(contenido, bebidas[10]);
  36.  
  37.  
  38.  
  39. cout<<"numero de tweets por bebidas:"<<endl;
  40. cout <<"tweets por coca-cola ="<< b1 << endl;
  41. cout<<"tweets por beer ="<<b2<<endl;
  42. cout<<"tweets por gin ="<<b3<<endl;
  43. cout<<"tweets por juice ="<<b4<<endl;
  44. cout<<"tweets por suko ="<<b5<<endl;
  45. cout<<"tweets por guarana ="<<b6<<endl;
  46. cout<<"tweets por mojito ="<<b7<<endl;
  47. cout<<"tweets por ron ="<<b8<<endl;
  48. cout<<"tweets por tequila ="<<b9<<endl;
  49. cout<<"tweets por wine ="<<b10<<endl;
  50. cout<<endl<<endl<<endl<<endl;
  51. cout<<"numero de palabras positivas por bebida:"<<endl;  //no contar, hacia abajo hombre
  52.  
  53. return 0;
  54. }
  55.  
  56.  
  57.  
  58. string lecturaycopia(ifstream &a)
  59. {
  60. string s, contenido;
  61. while (getline(a,s))
  62.   contenido += s;
  63. return contenido;
  64. }
  65.  
  66. int cuentabebidas( string contenido, string palabra)
  67. {  int contador=0, tamano= contenido.size(), posicion=contenido.find(palabra);
  68. for (int i=0; i<tamano;i++){
  69. if(posicion != string::npos){
  70. contador++;
  71.  
  72. }
  73. return contador;
  74. }
  75.  
  76.  
  77.  
  78. }
  79.  
4  Programación / Programación C/C++ / busqueda de palabras en un fichero en: 29 Junio 2016, 06:21 am
buenas a todos, necesito crear un programa que abra un fichero y busque palabras (en mi caso , debo buscar tragos y palabras positivas que los acompañen), hasta ahora solo he abierto el archivo, guardado en un string y transforme todas las minusculas a mayusculas para disminuir un poco la cantidad de palabras a buscar. (las palabras no las ingresa el usuario, debe hacerlo el programa.

no se que hacer he intentado pero o no me compila o no hace lo que debe  :( :(
( c++)
Código
  1.        #include <iostream>
  2. #include <fstream>
  3. #include <cctype>
  4. #include <cstring>
  5. #include <cstdlib>
  6. #include <sstream>
  7.  
  8. using namespace std;
  9.  
  10. string lectura(ifstream &file);
  11. string mayusculas (string archivo);
  12.  
  13.  
  14. int main(){
  15. int contar;
  16. string contenedor, enmayusculas,copia;
  17. ifstream archivo ("tweets.txt");
  18. if(archivo.fail())
  19. {cout<<"error";
  20. return  1;  }
  21.  
  22. contenedor=lectura(archivo);
  23. enmayusculas=mayusculas(contenedor);
  24. copia=enmayusculas;
  25. cout<<copia;
  26. system ("pause");  
  27. return 0;
  28. }
  29.  
  30. string lectura (ifstream &file) {
  31. string entrada, contenido;
  32. while (getline(file,entrada))
  33. contenido=contenido + entrada ;
  34.  
  35. return contenido;
  36. }
  37.  
  38. string mayusculas (string archivo) {
  39. for(int i=0;i<archivo.size();i++){
  40. archivo[i]=toupper(archivo[i]);
  41. }
  42. return archivo;
  43. }
  44.  
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines