Def validate_password(password): Функция принимает пароль строкой и выполняет валидацию с трёх. вс функций: 1. Содержит только a-z, A-Z, 0-9 2. Содержит четное количество букв 3. Содержит нечетное количество цифр Основная функция возвращает True, если пароль валидный. Если пароль не валидный, возвращает лист стрингов, в которых перечислены причины неуспешной проверки. Например: ["содержит запрещенные символы"] pass
password.append('не содержит четного кол-ва букв')
return False
_validate_letters_even(input_str)
def _validate_numbers_odd(input_str):
count_digits = sum([ 1 for s in input_str if s.isdigit() ])
if count_digits != 0 and count_digits % 2 == 0:
return True
else:
password.append('не содержит четного количества цифр')
return False
_validate_numbers_odd(input_str)
if len(password) == 0:
return True
else:
print(password)
return password
validate_password(password)
Объяснение:
если есть вопросы пиши, функции сам только начал изучать, чуть голова не лопнула)) В конце validate_password(password) можно воткнуть в print() чтобы увидеть что дейтвительно возращает True
procedure oddDec(var a,b:integer); //подпрограмме переданы аргументы a и b //процедура для вычитания в нечётном элементе begin; a:=a-b; end;
procedure NotoddInc(var a,b:integer); //подпрограмме переданы аргументы a и b //процедура для сложения в чётном элементе begin; a:=a+b; end;
begin randomize; readln(a); //ввод a readln(b); //ввод b writeln('Array:'); for i:=1 to 10 do //весь массив begin; ar[i]:=random(-20,80); //случайные числа от -20 до 80 включительно write(ar[i]:4); //вывод if odd(i) then oddDec(ar[i],b) else NotoddInc(ar[i],a); {если нечётное, то первая процедура, иначе вторая. Обращаю внимания на то, что элементы меняются сразу после вывода} end; writeln; writeln('Final array:'); //вывод получившегося массива for i:=1 to 10 do write(ar[i]:4); end.
Пример ввода: 20 10 Пример вывода: Array: 10 16 0 60 23 4 22 -20 4 55 Final array: 0 36 -10 80 13 24 12 0 -6 75
import re
password = []
def validate_password(password):
input_str = input('Введите пароль: ')
def _validate_symbols(input_str):
return input_str.isalnum()
_validate_symbols(input_str)
if _validate_symbols(input_str) == True:
pass
else:
password.append('содержит запрещенные символы')
def _validate_letters_even(input_str):
count_letter = (len(re.sub('[^a-zA-Z]+', '', input_str)))
if count_letter != 0 and count_letter % 2 == 0:
return True
else:
password.append('не содержит четного кол-ва букв')
return False
_validate_letters_even(input_str)
def _validate_numbers_odd(input_str):
count_digits = sum([ 1 for s in input_str if s.isdigit() ])
if count_digits != 0 and count_digits % 2 == 0:
return True
else:
password.append('не содержит четного количества цифр')
return False
_validate_numbers_odd(input_str)
if len(password) == 0:
return True
else:
print(password)
return password
validate_password(password)
Объяснение:
если есть вопросы пиши, функции сам только начал изучать, чуть голова не лопнула)) В конце validate_password(password) можно воткнуть в print() чтобы увидеть что дейтвительно возращает True