do {
system("CLS");
contadorprecio = 0;
cout << "Introduzca el precio correctamente" << endl;
cout << "Si desea agregar decimales, deben ser dos" << endl;
cout<<"Si no desea agregar decimales puede agregar .00 al final del precio o se agrega automaticamente"<<endl;
getline(cin, videojuegos[i].precio);
longitudprecio = videojuegos[i].precio.length();
posicionpunto = longitudprecio - 3;
if ((videojuegos[i].precio[posicionpunto]) == '.') { //Si el punto está en la posicion correcta (con dos decimales enfrente) va a validar que los demas caracteres sean numeros
for (int k = 0; k < posicionpunto; k++) {
if (videojuegos[i].precio[k] < '0' || videojuegos[i].precio[k]>'9') {
contadorprecio++;
}
}
for (int k = posicionpunto + 1; k < longitudprecio; k++) {
if (videojuegos[i].precio[k] < '0' || videojuegos[i].precio[k]>'9') {
contadorprecio++;
}
}
}
else { //Si el punto no está en la posicion correcta va a validar si todos los caracteres son numeros
for (int k = 0; k < longitudprecio; k++) {
if (videojuegos[i].precio[k] < '0' || videojuegos[i].precio[k]>'9') {
contadorprecio++;
}
}
}
} while (contadorprecio > 0);
longitudprecio = videojuegos[i].precio.length();
posicionpunto = longitudprecio - 3;
if ((videojuegos[i].precio[posicionpunto]) != '.') { //Como ya se validó que el usuario no agregó decimales y también se validó que todos caracteres son numeros, para evitar
videojuegos[i].precio = videojuegos[i].precio + ".00"; //que si el usuario agregó decimales tambien se le agregue .00, solo se agregará si en la posicion donde debe ir el punto, no está
}