Предмет: Информатика,
автор: savkasergij377
Ви, напевно, знаєте систему «лайків» із Facebook та інших сторінок. Люди можуть "лайкати" дописи в блогах, зображення чи інші елементи. Ми хочемо створити текст, який має відображатися поруч із таким елементом.
Реалізуйте функцію, яка приймає масив, що містить імена людей, яким подобається фото, пост і т.д. Функція повинна повернути текст, як показано в
прикладах:
17
[peter"]
--> "no one likes this" --> "peter likes this"
--> "Jacob and Alex like this"
--> "Max, John and Mark like this"
["асов", "Alex
"Max", "
["Alex",
John",
"Mark"1
"Mark",
"Jacob",
"Мах"] --> "Alex, Jacob and 2 others like this"
Ответы
Автор ответа:
0
Код на языке Python:
def likes(names):
count = len(names)
if count == 0:
return "no one likes this"
elif count == 1:
return f"{names[0]} likes this"
elif count == 2:
return f"{names[0]} and {names[1]} like this"
elif count == 3:
return f"{names[0]}, {names[1]} and {names[2]} like this"
else:
others_count = count - 2
sorted_names = sorted(names[:2] + names[2:], key=lambda name: name.lower())
return f"{sorted_names[0]}, {sorted_names[1]} and {others_count} others like this"
n = int(input("Write names amount: "))
names = []
for i in range(n):
name = input(f"Write {i + 1} a name: ")
names.append(name)
result = likes(names)
print(result)
Похожие вопросы
Предмет: Українська мова,
автор: muzinta1977
Предмет: Окружающий мир,
автор: temasidor2012
Предмет: Математика,
автор: SID2023
Предмет: Химия,
автор: A1H1S1
Предмет: Русский язык,
автор: valeriijshevch