Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรม Python ตรวจสอบว่าประโยคเป็น Pangram หรือไม่

กำหนดประโยค งานคือตรวจสอบว่าประโยคนี้เป็น pangram หรือไม่ ตรรกะคือคำหรือประโยคที่มีตัวอักษรทุกตัวในอัลฟาเบทอย่างน้อยหนึ่งครั้ง แก้ด้วยเมธอด set() และ list comprehension

ตัวอย่าง

Input: string = 'abc def ghi jkl mno pqr stu vwx yz'
Output: Yes // มีตัวอักษรครบ a ถึง z
Input: str='python program'
Output: No // ไม่มีตัวอักษรครบ a ถึง z

อัลกอริทึม

ขั้นตอนที่ 1: สร้างสตริง
ขั้นตอนที่ 2: แปลงประโยคทั้งหมดเป็นตัวพิมพ์เล็กด้วย lower()
ขั้นตอนที่ 3: แปลงสตริงอินพุทเป็น set() เพื่อได้รายการตัวอักษรที่ไม่ซ้ำกัน
ขั้นตอนที่ 4: แยกตัวอักษรอัลฟาเบททั้งหมด ord() คืนค่า ASCII
ขั้นตอนที่ 5: ถ้าความยาวลิสต์เป็น 26 แสดงว่ามีตัวอักษรครบ เป็น Pangram ไม่อย่างนั้นไม่ใช่

โค้ดตัวอย่าง

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

# โปรแกรมหลัก
str1 = input("ป้อนสตริง ::>")
if (checkPangram(str1)):
    print('"' + str1 + '"')
    print("เป็น pangram")
else:
    print('"' + str1 + '"')
    print("ไม่ใช่ pangram")

ผลลัพธ์

ป้อนสตริง ::abc def ghi jkl mno pqr stu vwx yz
"abc def ghi jkl mno pqr stu vwx yz" เป็น pangram
ป้อนสตริง ::> python program
"pyhton program" ไม่ใช่ pangram