Вот готовые решения без input() — значения уже вписаны в код, чтобы можно было сразу запускать.
Упражнение 110. Порядок сортировки
numbers = [8, 3, 12, 5, 1, 0]
result = []
for number in numbers:
if number == 0:
break
result.append(number)
result.sort()
print("Числа по возрастанию:")
for number in result:
print(number)
Упражнение 111. Обратный порядок
numbers = [8, 3, 12, 5, 1, 0]
result = []
for number in numbers:
if number == 0:
break
result.append(number)
result.sort(reverse=True)
print("Числа по убыванию:")
for number in result:
print(number)
Упражнение 115. Список собственных делителей
def proper_divisors(n):
divisors = []
for i in range(1, n):
if n % i == 0:
divisors.append(i)
return divisors
if __name__ == "__main__":
number = 28
result = proper_divisors(number)
print("Число:", number)
print("Собственные делители:", result)
Упражнение 117. Только слова
def only_words(text):
punctuation = ".,!?-':;"
words = text.split()
result = []
for word in words:
while len(word) > 0 and word[0] in punctuation:
word = word[1:]
while len(word) > 0 and word[-1] in punctuation:
word = word[:-1]
result.append(word)
return result
if __name__ == "__main__":
text = "Contractions include: don't, isn't, and wouldn't."
result = only_words(text)
print("Исходная строка:", text)
print("Слова:")
for word in result:
print(word)
Упражнение 118. Словесные палиндромы
def only_words(text):
punctuation = ".,!?-':;"
words = text.split()
result = []
for word in words:
while len(word) > 0 and word[0] in punctuation:
word = word[1:]
while len(word) > 0 and word[-1] in punctuation:
word = word[:-1]
result.append(word.lower())
return result
text = "Herb the sage eats sage, the herb"
words = only_words(text)
if words == words[::-1]:
print("Строка является словесным палиндромом")
else:
print("Строка не является словесным палиндромом")
print("Исходная строка:", text)
print("Слова после обработки:", words)
Упражнение 119. Ниже и выше среднего
numbers = [10, 20, 30, 40, 50]
average = sum(numbers) / len(numbers)
below = []
equal = []
above = []
for number in numbers:
if number < average:
below.append(number)
elif number == average:
equal.append(number)
else:
above.append(number)
print("Введенные числа:", numbers)
print("Среднее значение:", average)
print("Числа ниже среднего:")
for number in below:
print(number)
print("Числа, равные среднему:")
for number in equal:
print(number)
print("Числа выше среднего:")
for number in above:
print(number)
Упражнение 122. «Поросячья латынь»
text = "computer think algorithm office"
vowels = "aeiou"
words = text.split()
new_words = []
for word in words:
if word[0] in vowels:
new_word = word + "way"
else:
index = 0
while index < len(word) and word[index] not in vowels:
index += 1
new_word = word[index:] + word[:index] + "ay"
new_words.append(new_word)
result = " ".join(new_words)
print("Исходный текст:", text)
print("Поросячья латынь:", result)