Емил обнови решението на 15.03.2012 16:54 (преди почти 13 години)
+def prepare_meal(number):
+ meal = ''
+ brspam = 0
+ while (number % 3 == 0):
+ number = number / 3
+ brspam += 1
+ breggs = 0
+ while (number % 5 == 0):
+ number = number / 5
+ breggs += 1
+ if(not brspam and not breggs):
+ return ''
+ if(brspam and breggs):
+ meal = ((brspam-1) * 'spam ')
+ meal += 'spam '
+ meal += 'and '
+ meal += ((breggs-1) * 'eggs ')
+ meal += 'eggs'
+ elif(brspam):
+ meal = (brspam-1) * 'spam '
+ meal += 'spam'
+ else:
+ meal = (breggs-1) * 'eggs '
+ meal += 'eggs'
+ return meal
Функцията ти не връща нищо.
print != return => няма как да получиш и една точка.
Благодаря за забележката, използвах print за тест на програмата. Забравил съм да го сменя :)