solucionado, gracias
Puedes eliminar lo que sobra si el usuario inserta más de 8 carácteres:
std::string str ("2458770243857carnet");
str.erase (7,str.length()-1);
Referencia -> http://www.cplusplus.com/reference/string/string/erase/
Creo haberlo entendido bien, si no pregunta.
¡Un saludo!
Cita de: avesudra en 1 Marzo 2013, 16:00 PM
Puedes eliminar lo que sobra si el usuario inserta más de 8 carácteres:
std::string str ("2458770243857carnet");
str.erase (7,str.length()-1);
Referencia -> http://www.cplusplus.com/reference/string/string/erase/
Creo haberlo entendido bien, si no pregunta.
¡Un saludo!
no lo entiendo, de todos modos este solo eliminaria si inserta de mas
pero si introduce menos caracteres lo cogerá como bueno....
Vamos a ver tu solo tienes que coger 8 carácteres,así que o avisas al usuario de que se ha pasado o de que le faltan carácteres que es lo mejor, o intentas arreglarlo de alguna manera, que para lo de menos de 8 carácteres es un poco imposible pues no te puedes inventar los datos así que:
do{
cout<<"introduce el DNI(sin letra)"<<endl;
cin>>id;
if( (id.lenght() < 8) || (id.lenght() > 8))
{
cout << "Debes ingresar 8 caracteres.";
}
}while (id.lenght() != 8);
Eso es un hecho, lo que coloca avesudra suena bastante lógico. saludos
Cita de: avesudra en 1 Marzo 2013, 16:26 PM
:
longitufd=id.lenght;
do{
cout<<"introduce el DNI(sin letra)"<<endl;
cin>>id;
if (longitufd !=8) )
cout << "Debes ingresar 8 caracteres.";
}while (longitufd!= 8);
Reduzco el cálculo de long. a la mitad y las comparaciones también a la mitad y me ahorro las llaves al tener una sola sentencia después del if-
Saluditos!. ---(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)
HAHAHA si la verdad, no dan premios por usar llaves XD
La verdad para mí es más legible poner las llaves pero cada uno a su gusto, lo de calcular el largo si que es verdad que no hace falta calcularlo cada vez xD
¡Un saludo!
Lo importante es hacer legible porque no sabes si alguien más tenga que leer y asi no complicas demasiado. saludos.
Cita de: avesudra en 2 Marzo 2013, 14:14 PM
La verdad para mí es más legible poner las llaves pero cada uno a su gusto, lo de calcular el largo si que es verdad que no hace falta calcularlo cada vez xD
....................................................
Es, además de cuestión de gustos, de no sobrecargar innecesariamente un código que fuese extenso. Todo el secreto radica en ser serios en la indentación, cosa que suele pasarse por alto. Como curiosidad, en Python por ejemplo no hay llaves ni puntos y comas, eso si se es muy estricto con la indentación y el resultado son códigos más legibles que los usuales por estos lares de C/C++.
Saluditos!. ....(http://st.forocoches.com/foro/images/smilies/simba2.gif)
Cita de: leosansan en 3 Marzo 2013, 19:42 PM
Es, además de cuestión de gustos, de no sobrecargar innecesariamente un código que fuese extenso. Todo el secreto radica en ser serios en la indentación, cosa que suele pasarse por alto. Como curiosidad, en Python por ejemplo no hay llaves ni puntos y comas, eso si se es muy estricto con la indentación y el resultado son códigos más legibles que los usualespor estos lares de C/C++.
Saluditos!. ....(http://st.forocoches.com/foro/images/smilies/simba2.gif)
Bueno intentaré cambiarlo, cuando elimino las llaves veo todo el código muy junto y no me gusta, por eso las pongo. Quizás por eso intenté hacer algo con python y no me gustó :laugh: .
PD: Muy guapo el león :xD
¡Un saludo!
En realidad las llaves son importantes, fueron creadas para marcar ámbitos, y por supuesto que hacen más legible el code, aunque algunas veces yo saco las que se permiten sacar,