Buenas, el bucle funciona correctamente, lo que sí para añadir correctamente la opción de "comuniquese a un administrador" te recomendaría utlizar el "else if".
Resultado:
...
if( inicioDeSesionRegistrado == inicioDeSesionIngresado && contrasenhaRegistrada == contrasenhaIngresada ) {
alert("Bienvenido al sistema " + inicioDeSesionIngresado);
break;
} else if (contador == intentos){
alert("intentos agotados comuniquese con el administrador");
} else {
alert("inicio de sesión inválido, intente nuevamente.");
}
contador ++;
};
...
De este modo le decimos que si el usario y contraseña son correctos igrese, en caso de que haya agotado los intentos se comunique con un administrador y si los intentos no fueron agotados pero el usario y/o contraseña son incorrectos vuelva a intentarlo.
Espero haber sido de ayuda, saludos :)