נתונה המחלקה DigitInfo:
נתונה המחלקה DigitInfo:
class DigitInfo:
def __init__(self, num):
if num < 0:
num = num * -1
dig = num % 10
self.dig1 = dig
self.dig2 = dig
num = num // 10
while num > 0:
dig = num % 10
if dig < self.dig1:
self.dig1 = dig
elif dig > self.dig2:
self.dig2 = dig
num = num // 10
def __str__(self):
return str(self.dig1) + "," + str(self.dig2)
def combine(self):
return self.dig1 + self.dig2
סעיף א
עקבו אחרי ביצוע קטע הקוד שלפניכם ורשמו מה יהיה הפלט: info = DigitInfo(48291) print(info) print(info.combine())
סעיף ב
מהו הערך הגדול ביותר ומהו הערך הקטן ביותר שיכולה להחזיר הפונקציה combine()?
סעיף ג
נתונה הפונקציה Mystery:
def mystery(arr):
temp1 = DigitInfo(arr[0])
temp2 = DigitInfo(arr[0])
ind1 = 0
ind2 = 0
for i in range(1, len(arr)):
cur = DigitInfo(arr[i])
if cur.combine() > temp1.combine():
temp2 = temp1
temp1 = cur
ind2 = ind1
ind1 = i
else:
if cur.combine() > temp2.combine():
temp2 = cur
ind2 = i
print(str(arr[ind1]) + " " + str(arr[ind2]))
עקבו אחרי ביצוע קטע הקוד שלפניכם ורשמו מה יהיה הפלט: a = [3458,45, 7341, 6, 13579, 86] mystery(a)
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.