Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Chương trình Python kiểm tra câu có phải pangram không

Cho một câu. Nhiệm vụ kiểm tra câu này có phải pangram hay không. Logic kiểm tra pangram là từ hoặc câu chứa mọi chữ cái của bảng chữ cái ít nhất một lần. Để giải bài toán này ta dùng phương thức set() và kỹ thuật list comprehension.

Ví dụ

 Input: string = 'abc def ghi jkl mno pqr stu vwx yz' Output: Yes // chứa tất cả ký tự từ 'a' đến 'z' Input: str='python program' Output: No // Không chứa tất cả ký tự từ 'a' đến 'z' 

Thuật toán

 Bước 1: Tạo một chuỗi. Bước 2: Chuyển toàn bộ câu sang chữ thường bằng lower(). Bước 3: Chuyển chuỗi đầu vào thành set(), để có danh sách tất cả ký tự duy nhất trong câu. Bước 4: Tách riêng tất cả chữ cái, ord() trả về giá trị ASCII của ký tự. Bước 5: Nếu độ dài list là 26 nghĩa là tất cả ký tự đều có mặt và câu là Pangram, ngược lại không. 

Mã ví dụ

 def checkPangram(s): lst = [] for i in range(26): lst.append(False) for c in s.lower(): if not c == " ": lst[ord(c) - ord('a')] = True for ch in lst: if ch == False: return False return True # Chương trình chính str1 = input("Nhập Chuỗi ::") if (checkPangram(str1)): print ('"' + str1 + '"') print ("là pangram") else: print ('"' + str1 + '"') print ("không phải pangram") 

Kết quả

 Nhập Chuỗi ::abc def ghi jkl mno pqr stu vwx yz "abc def ghi jkl mno pqr stu vwx yz" là pangram Nhập Chuỗi ::> python program "pyhton program" không phải pangram