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

ตรวจสอบว่าสตริงเป็น Pangrammatic Lipogram ใน Python . หรือไม่


สมมติว่าเราได้รับสายอักขระสามสายและเราขอให้ค้นหาว่าสายอักขระใดเป็น Pangram, Lipogram และ Pangrammatic Lipogram Pangram คือสตริงหรือประโยค โดยที่ตัวอักษรทุกตัวในตัวอักษรปรากฏขึ้นอย่างน้อยหนึ่งครั้ง Lipogram เป็นสตริงหรือประโยคที่ไม่มีตัวอักษรอย่างน้อยหนึ่งตัวในตัวอักษรปรากฏขึ้น Pangrammatic Lipogram คือสตริงหรือประโยคที่มีตัวอักษรทั้งหมดในตัวอักษรปรากฏ ยกเว้นเพียงตัวเดียว

ดังนั้นหากอินพุตเป็น −

บรรจุกล่องของฉันด้วยขวดเหล้าห้าโหลเพื่ออยู่ในโลกมนุษย์นี้หรือด้วยมือของฉันเอง เพื่อการลืมเลือน นั่นคือปริศนาของฉัน สุนัขจิ้งจอกสีน้ำตาลเร็วกระโดดข้ามสุนัขตัวเมียตัวเมีย เพื่อความรวดเร็ว ก่อน> 

จากนั้นผลลัพธ์จะเป็น −

สตริงคือ Pangramสตริงไม่ใช่ Pangram แต่อาจเป็น Lipogram สตริงคือ Pangramสตริงคือ Lipogram แบบ Pangrammatic

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • แปลงตัวอักษรทั้งหมดในสตริงเป็นตัวพิมพ์เล็ก
  • ผม :=0
  • สำหรับอักขระแต่ละตัวในอักษรตัวพิมพ์เล็ก ให้ทำ
    • หากไม่พบอักขระใน input_string แล้ว
      • ผม :=ผม + 1
  • ถ้าฉันเหมือนกับ 0 แล้ว
    • output :="The String is a Pangram"
  • มิฉะนั้น เมื่อฉันเหมือนกับ 1 แล้ว
    • output :="The String is a Pangrammatic Lipogram"
  • มิฉะนั้น
    • output :="The String ไม่ใช่ Pangram แต่อาจเป็น Lipogram"
  • ผลตอบแทนที่ได้

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -

นำเข้า stringdef แก้(input_string):input_string.lower() i =0 สำหรับตัวอักษรใน string.ascii_lowercase:if(input_string.find(character) <0):i +=1 if(i ==0):output ="The String is a Pangram" elif(i ==1):output ="The String is a Pangrammatic Lipogram" else:output ="สตริงไม่ใช่ Pangram แต่อาจเป็น Lipogram" return outputprint(solve(" แพ็คกล่องของฉันด้วยเหยือกเหล้าห้าโหล"))พิมพ์(แก้("ที่จะอยู่ในโลกมนุษย์นี้หรือด้วยมือของฉันเอง ไปสู่การลืมเลือน นั่นคือปริศนาของฉัน"))พิมพ์(แก้("จิ้งจอกสีน้ำตาลเร็วกระโดดข้าม สุนัขขี้เกียจ")) พิมพ์ (แก้ ("waltz, nymph, for jigs ve bud"))

อินพุต

บรรจุกล่องของฉันด้วยขวดเหล้าห้าโหลเพื่ออยู่ในโลกมนุษย์นี้หรือด้วยมือของฉันเอง เพื่อการลืมเลือน นั่นคือปริศนาของฉัน สุนัขจิ้งจอกสีน้ำตาลเร็วกระโดดข้ามสุนัขตัวเมีย ตัวอ่อน เพื่อความฉับไว

ผลลัพธ์

สตริงคือ Pangramสตริงไม่ใช่ Pangram แต่อาจเป็น Lipogram สตริงคือ Pangramสตริงคือ Lipogram แบบ Pangrammatic