Metodo en POO

Iniciado por ximenaferneymega, 2 Diciembre 2016, 18:30 PM

0 Miembros y 1 Visitante están viendo este tema.

ximenaferneymega

Tengo varios métodos dentro de la clase VECTOR, pero tengo un problema en el metodo  para ordenar de menor a mayor pero no me da quisiera saber si alguien me puede ayudar a encontrar el error en el método de la clase vector. Muchas Gracias !!  >:D  >:D

Aquí esta el codigo (solo la clase);
Código (cpp,86) [Seleccionar]
#include <iostream>

using namespace std;

class Vector {// Inicio de la clase VECTOR
   int n;//  Numero de elementos del vector
   float v[100];

   public:
       Vector(int ne) {
           n = ne;
}
int getN() {

return (n);
}
float getV(int indice) {
return (v[indice]);
}
float *getV() {

return (v);
}
void setN(int ne) {
n = ne;
}
void setV(int pos, float valor) {
v[pos] = valor;
}
////////////////////////////////////////////////////////////
void leerVector(int indice, float valor) {
v[indice] = valor;
}
/////////////////////////////////////////////////////////////
void imprimirVector() {
int  i;

if(n == 0) {
cout<<"EL VECTOR ESTA VACIO";
} else {
for (i = 0; i < n; i++) {
cout<<v[i]<<"  ";
}
}

}
////////////////////////////////////////////////////////////
void insertarDesordenado(float valIn) {
v[n] = valIn;
n = n + 1;
}
/************************************************************/
int buscar(float valBus) {
int i = 0;

if (n == 0) {
system("cls");
cout<<" EL VECTOR ESTA VACIO"<<endl;
system("pause>null");

return (-1);                // Metodo para Buscar
} else {
while ((i < n) && (valBus != v[i])) {
i++;
}

if (i < n) {

return (i);
} else {

return (-1);
}
}
}
//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX//

void ordenarMenor(){
    int i, k, posMen;
       string nomMenor;
    //Vector aux;
   
   
    for (i=0; i<(n-1); i++){
    nomMenor=v[i].n();
    posMen = i;               // Metodo Ordenar de menor a mayor

for (k=(i+1); k<n; k++){
if(nomMenor>v[k].getN()){
nomMenor=v[k].getN();
posMen=K;
}
}
  aux = v[i];
  v[i]=v[posMen];
  //v[posMen]=aux;
}
}
//XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX//

/*****************************************************************/
void insertarOrdenado(float valIn) {
int posIn = 0, k;

while ((posIn < n) && (valIn > v[posIn])) {
posIn++;
}

for (k = n - 1; k >= posIn; k--) {
v[k + 1] = v[k];
}
v[posIn] = valIn;
n++;
}
};


donde aparece subrayado es donde me aparece el error.


Mod: Los códigos deben ir en etiquetas GeSHi, No escribir en mayúsculas

Ocelot1994

¿Podrías comentar que tipo de error te da?

Un saludo

ximenaferneymega

Esta es la lista de errores que me aparece para complilar.

[Error] expected '}' at end of input

[Error] request for member 'getN' in '((Vector*)this)->Vector::v[k]', which is of non-class type 'float'

[Error] expected ')' before '{' token

Error] expected primary-expression before '}' token

[Error] 'aux' was not declared in this scope

[Error] expected unqualified-id at end of input

engel lex

copia y pega exactamente la salida del compilador (con numero de linea y demás)
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

0xFer

Cita de: ximenaferneymega en  2 Diciembre 2016, 19:52 PM
[Error] request for member 'getN' in '((Vector*)this)->Vector::v[k]', which is of non-class type 'float'

Estas tratando al vector v como si fuera un vector de objetos los cuales tienen el método getN, pero en realidad v es un vector de variables primitivas de tipo flotante los cuales no poseen métodos.

Cita de: ximenaferneymega en  2 Diciembre 2016, 19:52 PM
[Error] 'aux' was not declared in this scope

No has declarado la variables aux
Código (java) [Seleccionar]
int getRandomNumber(){
    return 4; //chosen by fair dice roll
              //guaranteed to be random
}

ximenaferneymega

#5
asi son los errores que me aparecen (estoy usando Dec-C++.5.11), con linea y columnas respectivamente.

116 2 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] expected '}' at end of input

89 22 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] request for member 'getN' in '((Vector*)this)->Vector::v[k]', which is of non-class type 'float'

89 28 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] expected ')' before '{' token

93 4 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] expected primary-expression before '}' token

94 6 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] 'aux' was not declared in this scope

98 2 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] expected unqualified-id at end of input



Mod: No escribir en mayúsculas


86 21 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] request for member 'getN' in '((Vector*)this)->Vector::v[i]', which is of non-class type 'float'

89 22 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] request for member 'getN' in '((Vector*)this)->Vector::v[k]', which is of non-class type 'float'

89 28 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] expected ')' before '{' token

93 4 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] expected primary-expression before '}' token

94 6 C:\Documents and Settings\docen10.SALASDRAI2\Mis documentos\Downloads\CLASES\Clase.cpp [Error] 'aux' was not declared in this scope



coloca los errores dentro de etiquetas de codigo (la que tiene el simbolo #)

no hagas doble post!

engel lex

por que tienes 2 juegos de errores?

que son los segundos errores que publicaste?
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

ximenaferneymega

Perdon Me he equivocado es la Ultima Parte XD

Ocelot1994

Cita de: ximenaferneymega en  2 Diciembre 2016, 19:52 PM


[Error] expected '}' at end of input


[Error] expected ')' before '{' token

Error] expected primary-expression before '}' token

[Error] expected unqualified-id at end of input

Tienes varias errores muy parecidos, deberias tabular bien el codigo en algunas lineas de tu codigo para darte cuenta de que tienes mal cerrado algun parentesis o un punto y coma donde no debe.

Saludos

ximenaferneymega

Aunque me aparece este error, todos los paréntesis, llaves y puntos y comas estan bien. La verdad No se pero no creo que sea por eso.
Debe de tener otras funciones que no coinciden y aun no logro encontrarlas ,,,