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

ตรวจสอบว่าสามารถแสดงตัวเลขโดยใช้เจ็ดเซกเมนต์นำใน Python . ได้หรือไม่


สมมติว่าเรามีตัวเลข n และเรามีอินพุตอื่น c เราต้องตรวจสอบว่า n สามารถแสดงโดยใช้จอแสดงผล 7 ส่วนได้หรือไม่ ตอนนี้ที่นี่เป็นข้อจำกัด เราได้รับอนุญาตให้เรืองแสงได้ไม่เกินจำนวน c ของ LED เท่านั้น

ดังนั้น หากอินพุตเป็น n =315 c =17 เอาต์พุตจะเป็น True เนื่องจาก 315 ต้องการ 12 LEDs และเรามี 17

ตรวจสอบว่าสามารถแสดงตัวเลขโดยใช้เจ็ดเซกเมนต์นำใน Python . ได้หรือไม่

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

  • seg :=รายการที่มีการนับนำสำหรับตัวเลขทั้งหมด :[6, 2, 5, 5, 4, 5, 6, 3, 7, 6]
  • s :=n เป็นสตริง
  • led_count :=0
  • สำหรับฉันในช่วง 0 ถึงขนาด s - 1 ทำ
    • led_count :=led_count + seg[ค่าสำหรับอักขระ ith]
  • ถ้า led_count <=c แล้ว
    • คืนค่า True
  • คืนค่าเท็จ

ตัวอย่าง

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

seg = [6, 2, 5, 5, 4, 5, 6, 3, 7, 6]
def solve(n, c) :
   s = str(n)
   led_count = 0
   for i in range(len(s)) :
      led_count += seg[ord(s[i]) - 48]
   if led_count <= c:
      return True
   return False
n = 315
c = 17
print(solve(n, c))

อินพุต

315, 17

ผลลัพธ์

True