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


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  Ayuda con Programacion Orientada a Objetos C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con Programacion Orientada a Objetos C++  (Leído 511 veces)
ovg17

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Ayuda con Programacion Orientada a Objetos C++
« en: 27 Enero 2013, 00:10 »

hola tengo el siguiente problema, me piden en un problema basicamente hacer un programa en el cual se ingresen una serie de palabras para asi formar un texto y saber cuantas palabras tiene, cuantos signos de puntuacion y cuantas letras e hice el sigueinte codigo:

 
Código:
#include <iostream>
#include <string.h>
using namespace std;
class palabra{
   private: string contenido;
   private: int nletras;
   public: palabra(){};
   public: palabra(string c, int nl){
      contenido=c;
      nletras=nl;
   }
};
class texto{
   private: int npalabras;
   private: string nautor;
   private: string idioma;
   private: palabra *pal;
   public: texto(int n, string a,string i){
      npalabras=n;
      nautor=a;
      idioma=i;
      pal=new palabra[npalabras];
   }
   public: int numpalabras(){
      int i=0,cont=0;
      for(i=0;i<npalabras;i++){
         if(palabra[i]>64 && palabra[i]<91 || palabra[i]>96 && palabra[i]<123){
            cont=cont+1;
         }
      }
      return(cont);
   }
   
   public: int numsig(){
      int i=0,cont2=0;
      for (i=0;i<npalabras;i++){
         if(palabra[i]>=33 && palabra[i]<=63){
            cont2=cont2+1;
         }
      }
      return (cont2);
   }
};

al compilar me suelta estos errores:

lab9.cpp: En la función miembro ‘int texto::numpalabras()’:
lab9.cpp:27:14: error: expected primary-expression before ‘[’ token
lab9.cpp:27:31: error: expected primary-expression before ‘[’ token
lab9.cpp:27:48: error: expected primary-expression before ‘[’ token
lab9.cpp:27:65: error: expected primary-expression before ‘[’ token
lab9.cpp: En la función miembro ‘int texto::numsig()’:
lab9.cpp:37:14: error: expected primary-expression before ‘[’ token
lab9.cpp:37:32: error: expected primary-expression before ‘[’ token
Ha fallado la compilación.

gracias de antemano



En línea

Stakewinner00


Desconectado Desconectado

Mensajes: 1.378



Ver Perfil WWW
Re: Ayuda con Programacion Orientada a Objetos C++
« Respuesta #1 en: 27 Enero 2013, 00:21 »

por que no cambias los numeros de
Código:
palabra[i]>64 && palabra[i]<91 || palabra[i]>96 && palabra[i]<123
por el carácter.

Por ejemplo si 28 fuera A pues en vez de poner 28 pones 'A'


En línea

La dificultad en el hacking no esta tanto en obtener conocimiento (que ya de por si difícil) sino en conservar los valores.
ovg17

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Ayuda con Programacion Orientada a Objetos C++
« Respuesta #2 en: 27 Enero 2013, 00:26 »

por que no cambias los numeros de
Código:
palabra[i]>64 && palabra[i]<91 || palabra[i]>96 && palabra[i]<123
por el carácter.

Por ejemplo si 28 fuera A pues en vez de poner 28 pones 'A'

porque en el arreglo de tipo palabra, en cada posicion estoy almacenando una palabra, por eso lo recorro con el for para asi ver si se encuentra en ese rango de la tabla ASCII y entre al contador.
En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Ayuda con Programacion Orientada a Objetos C++
« Respuesta #3 en: 27 Enero 2013, 01:42 »

El error está en esta línea:

Código
  1. if(palabra[i]>64 && palabra[i]<91 || palabra[i]>96 && palabra[i]<123){
  2.            cont=cont+1;
  3.         }
El nombre del array no es palabra sino pal:
Código
  1. pal=new palabra[npalabras];

Por cierto, no tienes que poner private: ni public: en cada linea de la clase, lo puedes dejar asi:

Código
  1. class palabra
  2. {
  3.   private:
  4.            string contenido;
  5.            int nletras;
  6.   public:
  7.  
  8.    palabra(){};
  9.   palabra(string c, int nl)
  10.   {
  11.      contenido=c;
  12.      nletras=nl;
  13.   }
  14. };

Y el compilador te entenderá perfectamente.
En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Programación Orientada a Objetos, ¿Lío o necesidad? « 1 2 »
Programación General
skan 13 3,321 Último mensaje 28 Agosto 2008, 19:43
por AxXioma
Programación en C++ Orientada a objetos [LIBRO]
Programación C/C++
CaronteGold 0 749 Último mensaje 28 Septiembre 2009, 15:35
por CaronteGold
Iniciándome a la POO (Programación Orientada a Objetos) en PHP
PHP
H4RR13R 1 1,422 Último mensaje 29 Diciembre 2009, 19:43
por Nakp
[Fundamentos] Programación Orientada a Objetos
Programación General
4ng3r 5 2,694 Último mensaje 3 Septiembre 2010, 20:16
por 4ng3r
Programacion orientada a objetos
Programación C/C++
cazagavilan 4 873 Último mensaje 21 Abril 2012, 10:55
por cazagavilan
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines