נתונה מחלקה בשם Number הבאה:
נתונה מחלקה בשם Number הבאה:
class Number:
def __init__(self, num):
self.num1 = 0
self.num2 = 0
if num < 0:
num = num * (-1)
while num > 0:
self.num1 = self.num1 + 1
self.num2 = self.num2 + num % 10
num = num // 10
def equals(self, other):
return self.num1 == other.num1 and self.num2 == other.num2
def is_same(self, other):
return self.num1 * other.num2 == self.num2 * other.num1
סעיף א-1
נתונה הפעולה mystery הבאה:
def mystery(x, y):
a = Number(x)
b = Number(y)
if x == y:
return 1
if a.equals(b):
return 2
if a.is_same(b):
return 3
return 4
תנו דוגמה לזוג פרמטרים שעבורו הפעולה mystery תחזיר 2.
סעיף א-2
תנו דוגמה לזוג פרמטרים שעבורו הפעולה mystery תחזיר 3.
סעיף א-3
תנו דוגמה לזוג פרמטרים שעבורו הפעולה mystery תחזיר 4.
סעיף א-4
האם קיים מספר שלם תלת-ספרתי חיובי x שעבורו הפעולה mystery אף פעם לא תחזיר 2 (לכל y אפשרי)? הסבירו את תשובתכם.
סעיף א-5
האם קיים מספר שלם תלת-ספרתי חיובי x שעבורו הפעולה mystery אף פעם לא תחזיר 3 (לכל y אפשרי)? הסבירו את תשובתכם.
סעיף ב
נתונה הפעולה secret הבאה:
def secret(arr):
temp1 = Number(arr[0])
temp2 = Number(arr[0])
pos1 = 0
pos2 = 0
for i in range(1, len(arr)):
cur = Number(arr[i])
if cur.num1 > temp1.num1:
pos1 = i
temp1 = cur
if cur.num2 > temp2.num2:
pos2 = i
temp2 = cur
return pos1 == pos2
נתונה הרשימה arr הבאה:
arr = [43, 13571, 6, -875, 7681, -45, 3458]
עקבו אחרי ביצוע זימון הפעולה secret(arr) ורשמו את תוצאת הזימון.
סעיף ג
מה מבצעת הפעולה secret באופן כללי, עבור רשימה של מספרים שלמים?
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.