• Khung trình chiếu

Bài tập: Kiểm tra mật khẩu mạnh

Các mã nguồn được viết bằng ngôn ngữ Pascal
Gửi hồi đáp
Ảnh đại diện người dùng
huynhbuutam
Nhà sáng lập
Nhà sáng lập
Các bài viết: 113
Đã gia nhập lúc: T3 31 Th8, 2021 22:04
Địa điểm: Trường THCS Châu Lăng
Tên thật: Huỳnh Bửu Tâm

Bài tập: Kiểm tra mật khẩu mạnh

Bài viết bởi huynhbuutam »

Viết chương trình kiểm tra mật khẩu nhập vào có phải là một mật khẩu mạnh hay không, giả định mật khẩu mạnh là mật khẩu thỏa mãn các yêu cầu sau:
- Dài ít nhất 8 kí tự
- Có chứa kí tự đặc biệt
- Có chứa kí tự số
- Có chứa kí tự HOA
- Có chứa kí tự thường
- Không có kí tự nào lặp lại
Ví dụ, "tamIT@10" là một mật khẩu mạnh
Chương trình minh họa:

Mã: Chọn tất cả

Moi ban nhap mat khau: tamIT@10
Do la mot mat khau manh

Mã nguồn:

Mã: Chọn tất cả

Uses Crt;
Var i, j : LongInt;
	S : AnsiString;
	Check : Array[1..6] Of Byte;
Begin
	ClrScr;
	Write('Moi ban nhap mat khau: ');
	ReadLn(S);
	If Length(S) < 8 Then Check[1] := 0 Else Check[1] := 1;
	For i := 2 To 5 Do Check[i] := 0;
	
	For i := 1 To Length(S) Do
		If Not ((S[i] In ['0'..'9']) Or (S[i] In ['A'..'Z']) Or (S[i] In ['a'..'z'])) Then
			Begin
				Check[2] := 1;
				Break;
			End;
	
	For i := 1 To Length(S) Do
		If S[i] In ['0'..'9'] Then
			Begin
				Check[3] := 1;
				Break;
			End;
	
	For i := 1 To Length(S) Do
		If S[i] In ['A'..'Z'] Then
			Begin
				Check[4] := 1;
				Break;
			End;
	
	For i := 1 To Length(S) Do
		If S[i] In ['a'..'z'] Then
			Begin
				Check[5] := 1;
				Break;
			End;
	
	Check[6] := 1;
	For i := 1 To Length(S) - 1 Do
		For j := i + 1 To Length(S) Do
			Begin
				If S[i] = S[j] Then Check[6] := 0;
				Break;
			End;
	
	For i := 1 To 6 Do
		If Check[i] = 0 Then
			Begin
				Write('Do khong phai la mot mat khau manh');
				ReadLn;
				Exit;
			End;
	
	Write('Do la mot mat khau manh');
	ReadLn;
End.
Gửi hồi đáp
  • Similar Topics
    Các hồi đáp
    Lượt xem
    Bài viết cuối