কম্পিউটার

প্রদত্ত পাসওয়ার্ড পাইথনে মানদণ্ড পূরণ করে কিনা তা পরীক্ষা করার জন্য প্রোগ্রাম


ধরুন আমাদের কাছে একটি স্ট্রিং s আছে, একটি পাসওয়ার্ড উপস্থাপন করে, আমাদের পাসওয়ার্ডের মানদণ্ড পরীক্ষা করতে হবে৷ কিছু নিয়ম আছে, যা আমাদের অনুসরণ করতে হবে −

  • পাসওয়ার্ডের দৈর্ঘ্য হবে কমপক্ষে ৮ অক্ষর এবং সর্বোচ্চ ২০টি অক্ষর।
  • পাসওয়ার্ডে অন্তত একটি সংখ্যা থাকে
  • পাসওয়ার্ডে অন্তত একটি ছোট হাতের অক্ষর এবং একটি বড় হাতের অক্ষর রয়েছে
  • পাসওয়ার্ডে অন্তত একটি বিশেষ অক্ষর থাকে যেমন !"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~
  • পাসওয়ার্ডে ট্যাব বা নতুন লাইনের মতো অন্য কোনো অক্ষর থাকে না।

সুতরাং, ইনপুট যদি "@bCd12#4" এর মত হয়, তাহলে আউটপুট হবে True।

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

  • a:=0, b:=0, c:=0, d:=0
  • যদি পাসওয়ার্ডের সাইজ <8 বা পাসওয়ার্ডের সাইজ> 20 হয়, তাহলে
    • মিথ্যে ফেরত দিন
  • প্রতিটি অক্ষরের জন্য i পাসওয়ার্ডে, করুন
    • যদি i বড় হাতের অক্ষর হয়, তাহলে
      • a :=a + 1
    • অন্যথায় যখন আমি ছোট হাতের অক্ষর, তারপর
      • b :=b + 1
    • অন্যথায় যখন আমি এই বিশেষ অক্ষরের সেটে '"!"#^modAND\'() *+,- ./:;<=>?@[\\]XOR_`{OR}~"', তখন
      • c :=c + 1
    • অন্যথায় যখন আমি একটি অঙ্ক, তারপর
      • d :=d + 1
  • যদি a>=1 এবং b>=1 এবং c>=1 এবং d>=1 এবং a+b+c+d পাসওয়ার্ডের আকারের সমান হয়, তাহলে
    • সত্য ফেরান
  • অন্যথায়,
    • মিথ্যে ফেরত দিন

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

class Solution:
   def solve(self, password):
      a=0
      b=0
      c=0
      d=0
      if len(password)<8 or len(password)>20:
         return False
      for i in password:
         if i.isupper():
            a+=1
         elif i.islower():
            b+=1
         elif i in '"!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~"':
            c+=1
         elif i.isdigit():
            d+=1
      if a>=1 and b>=1 and c>=1 and d>=1 and
         a+b+c+d==len(password):
      return True
      else:
         return False
s = "@bCd12#4"
ob = Solution()
print(ob.solve(s))

ইনপুট

"@bCd12#4"

আউটপুট

True

  1. প্রদত্ত ব্লকের তালিকা x =y লাইনের উপরে প্রতিসম নাকি পাইথনে নয় তা পরীক্ষা করার জন্য প্রোগ্রাম

  2. প্রদত্ত গাছটি পাইথনে সিমেট্রিক ট্রি কি না তা পরীক্ষা করার জন্য প্রোগ্রাম

  3. প্রদত্ত গ্রাফটি পাইথনে দ্বিপক্ষীয় কি না তা পরীক্ষা করার জন্য প্রোগ্রাম

  4. একটি প্রদত্ত স্ট্রিং কীওয়ার্ড কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম