কম্পিউটার

পাইথন প্রোগ্রাম পোস্টাল ঠিকানা বিন্যাস যাচাই করতে


ধরুন আমাদের একটি পোস্টাল কোড আছে তা বৈধ কি না তা যাচাই করতে হবে। একটি বৈধ পোস্টাল কোডের নিম্নলিখিত মানদণ্ড রয়েছে

  • এটি অবশ্যই 100000 থেকে 999999 পর্যন্ত একটি সংখ্যা হতে হবে (উভয়ই অন্তর্ভুক্ত)।

  • এটিতে একটির বেশি পর্যায়ক্রমে পুনরাবৃত্তিমূলক অঙ্ক জোড়া থাকা উচিত নয়৷

সুতরাং, যদি ইনপুটটি s ="700035" এর মত হয়, তাহলে আউটপুটটি True হবে কারণ এটি 100000 থেকে 999999 রেঞ্জের মধ্যে এবং এখানে কোনো ধারাবাহিক সংখ্যাও নেই।

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • n :=s এর আকার
  • nb :=0
  • ঠিক আছে :=সত্য
  • আমি 0 থেকে n - 1 রেঞ্জের জন্য, কর
    • ঠিক আছে :=ঠিক আছে এবং 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 and n == 6 and s[0] != '0' and nb < 2

s = "700035"
print(solve(s))

ইনপুট

"700035"

আউটপুট

True

  1. পাইথন প্রোগ্রাম কিভাবে চালাবেন?

  2. পাইথনে n(t) বিন্যাস হিসাবে উপস্থাপিত স্ট্রিং প্রসারিত করার প্রোগ্রাম

  3. একটি সুডোকু গ্রিড যাচাই করার প্রোগ্রামটি পাইথনে সমাধানযোগ্য বা নয়

  4. পাইথন প্রোগ্রামে ক্যালেন্ডার