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

โปรแกรม Python ตรวจสอบรูปแบบที่อยู่ไปรษณีย์


สมมติว่าเรามีรหัสไปรษณีย์เราต้องตรวจสอบว่าถูกต้องหรือไม่ รหัสไปรษณีย์ที่ถูกต้องมีเกณฑ์ดังต่อไปนี้

  • ต้องเป็นตัวเลขในช่วง 100000 ถึง 999999 (รวมทั้งสองอย่าง)

  • ต้องไม่มีคู่หลักที่ซ้ำกันมากกว่าหนึ่งคู่

ดังนั้น หากอินพุตเป็น s ="700035" เอาต์พุตจะเป็น True เนื่องจากอยู่ในช่วง 100000 ถึง 999999 และไม่มีตัวเลขต่อเนื่องกัน

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

  • n :=ขนาดของ s
  • nb :=0
  • โอเค :=จริง
  • สำหรับฉันในช่วง 0 ถึง n - 1 ทำ
    • ok :=ok และ s[i] เป็นตัวเลข จากนั้น
    • สำหรับฉันในช่วง 0 ถึง n-3 ทำ
      • nb :=nb + (1 ถ้า s[i] เหมือนกับ s[i+2] มิฉะนั้น 0)
  • ผลตอบแทน (จริงเมื่อตกลงเป็นจริงและ n เหมือนกับ 6 และ s[0] ไม่เหมือนกับ '0' และ nb <2) มิฉะนั้นจะคืนค่าเท็จ

ตัวอย่าง

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

def Solve(s):n =len(s) nb =0 ok =True for i in range(n):ok =ok and s[i].isdigit() for i in range(n-2) :nb +=s[i] ==s[i+2] return ok และ n ==6 และ s[0] !='0' and nb <2s ="700035"print(solve(s)) 

อินพุต

"700035"

ผลลัพธ์

จริง