/
kubkut
/
hw0
Обзор
Документация
Войти
/
kubkut
/
hw0
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
PasswordChecker.java
47 строк
1 KB
kubkut
сам. практика
13 фев 2026, 11:16
Верифицирован
13 фев 2026, 11:16
31ca053
Код
Авторство
О чём код?
package checkers; public class PasswordChecker { private int minLength = -1; private int maxRepeat = -1; public void setMinLength(int minLength) { if (minLength < 0) { throw new IllegalArgumentException("Длина пароля не может быть отрицательно!"); } this.minLength = minLength; } public void setMaxRepeat(int maxRepeat) { if (maxRepeat <= 0) { throw new IllegalArgumentException("Количество повторений должно быть положительным!"); } this.maxRepeat = maxRepeat; } public boolean verify(String password) { if (minLength == -1 || maxRepeat == -1){ throw new IllegalStateException("Чеккер не настроер!"); } if (password.length() < minLength) { // проверка на минимальную длину return false; } // ПРОВЕРКА НА КОЛИЧЕСТВО ПОВТОРЕНИЙ. ДЛЯ ЭТОГО ЗАВЕДЕМ СЧЕТЧИК ПОВТОРЕНИЙ int counter = 0; char previousLetter = 0; for (char letter : password.toCharArray()) { if (letter == previousLetter) { counter ++; } else { counter = 1; } if (counter > maxRepeat) { return false; } previousLetter = letter; } return true; } }