Dev - C++ - no logro encontrar el error en c++

 
Vista:
sin imagen de perfil

no logro encontrar el error en c++

Publicado por Micaela (4 intervenciones) el 24/06/2019 19:35:00
Buenas, tengo un problema en el cual no encuentro el error, les dejo mi funcion para que la vean y puedan decirme que es lo que tengo mal, gracias.

1
2
3
4
5
6
7
8
9
10
11
12
13
int charAint(char arrChar[],int cant){ ///Paso de char a int
    int edad,pos;
    bool nosalgo=true;
    for(pos=0;pos<cant;pos++){ ///Recorro el arreglo para ver si algun caracter no es un numero POR ALGUNA RAZON ESTE FOR NO ME FUNCIONA
         if(!(arrChar[pos]>='0') and !(arrChar[pos]<='9')){ ///no se si esta proposicion esta correcta tampoco
           nosalgo=false;
            printf("Error, intente nuevamente\n");
            leerEdad(arrChar,cant);
     }
    }
 Aca viene un while que es el que activa el bool, que funciona, pero por alguna razon el recorrido del arreglo no funciona.
    return edad;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 84
Ha disminuido 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

no logro encontrar el error en c++

Publicado por Yamil Bracho (41 intervenciones) el 24/06/2019 19:43:09
Donde declaras pos ?
Tu loop deberia ser :

for(int pos=0;pos<cant;pos++){ /
...
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

no logro encontrar el error en c++

Publicado por Micaela (4 intervenciones) el 24/06/2019 19:58:36
esta declarada al lado de la variable int edad
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 84
Ha disminuido 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

no logro encontrar el error en c++

Publicado por Yamil Bracho (41 intervenciones) el 24/06/2019 20:33:00
Ok, no la habia visto...

1) Hay una funcion en C que te dice si un caracter es un digito (isdigit)
if (!(isdigit(arrChar[pos]))) {
...

2) Cual es la finalidad de la variable nosalgo ?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

no logro encontrar el error en c++

Publicado por Micaela (4 intervenciones) el 24/06/2019 21:06:34
No me dejan usar funciones o temas no dados en clase, es de un while que va debajo del for que funciona bien, mi problema es con el for que si ingreso por ejemplo: "111q", me guarda en la variable edad el numero 11, pero en realidad necesito que me imprima que es un error, y no lo estaria haciendo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 84
Ha disminuido 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

no logro encontrar el error en c++

Publicado por Yamil Bracho (41 intervenciones) el 24/06/2019 21:20:00
Me falto comentarte que el 'and' deberia ser '&&'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

no logro encontrar el error en c++

Publicado por Micaela (4 intervenciones) el 24/06/2019 21:42:48
pero en c++ no se usa "and" en vez de "&&"??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar