Фраза brute force переводится как грубая сила. Как часто бывает в английском, существительное может использоваться как глагол: to brute force — сделать что-то с использованием грубой силы. По-русски говорят «забрутфорсить».
В контексте программирования чаще всего брут форс используется в контексте перебора различных вариантов, чтобы найти подходящий.
В этой задаче необходимо написать функцию, которая пытается угадать пароль пользователя, выполняя попытки логина с разными паролями.
Гарантируется, что длина пароля — ровно 4 символа, а состоять он может только из цифр (от 0 до 9) и больших латинских букв (от A до Z). Например, "0000"
, "ABCD"
или "M1K3"
.
Функция bruteForce
принимает два аргумента:
username
— имя пользователя;logIn
— функция, которая «логинит» пользователя:
username
и password
;true
, если пароль подошел, и false
, если не подошел.Функция bruteForce
должна вернуть пароль пользователя, если такой пользователь есть, и null
, если пароль не нашли.
// Это пример фунции logIn (в тестах будет другая фунция) // В нашу функцию может прийти любая функция, проверяющая пароль function logIn(username, password) { return username === "max" && password === "0000"; } console.log(bruteForce("max", logIn)); // "0000"; console.log(bruteForce("alexa", logIn)); // null;