Вопрос Помогите пожалуйста с решением на python))

Регистрация
3 Окт 2013
Сообщения
91
Репутация
-3
Спасибо
0
Монет
0
1)Дана строка. Преобразовать в ней все строчные буквы (как латинские, так и

русские) в прописные, а прописные — в строчные.

2)Даны строки S, S1 и S2. Заменить в строке S последнее вхождение строки S1 на

строку S2.

3)Дана строка, состоящая из русских слов, набранных заглавными буквами и

разделенных пробелами (одним или несколькими). Найти количество слов,

которые содержат ровно три буквы «А».

4)Дан массив ненулевых целых чисел размера N. Проверить, чередуются ли в нем

положительные и отрицательные числа. Если чередуются, то вывести 0, если нет,

то вывести порядковый номер первого элемента, нарушающего закономерность.

5)Дан целочисленный массив размера N. Удалить из массива все одинаковые

элементы, оставив их первые вхождения.
 
# 1) Преобразовать все строчные буквы в прописные и наоборот
def swap_case(input_string):
return input_string.swapcase()

# 2) Заменить последнее вхождение строки S1 на строку S2 в строке S
def replace_last_occurrence(S, S1, S2):
return S[::-1].replace(S1[::-1], S2[::-1], 1)[::-1]

# 3) Найти количество слов, содержащих ровно три буквы "А" в строке из заглавных слов
def count_words_with_three_As(input_string):
words = input_string.split()
count = 0
for word in words:
if word.count('А') == 3:
count += 1
return count

# 4) Проверить, чередуются ли в массиве положительные и отрицательные числа
def check_alternating_signs(arr):
alternating = True
for i in range(len(arr) - 1):
if (arr > 0 and arr[i + 1] > 0) or (arr < 0 and arr[i + 1] < 0):
return i + 1
return 0

# 5) Удалить из массива все одинаковые элементы, оставив их первые вхождения
def remove_duplicates(arr):
unique_elements = []
for item in arr:
if item not in unique_elements:
unique_elements.append(item)
return unique_elements

# Пример использования функций:
input_string = "Пример строки с Разными рЕГистРами"
S = "Это пример простого текста для замены последнего вхождения"
S1 = "пример"
S2 = "задача"
arr = [1, -2, 3, -4, 5, -6]

print("1) Преобразование регистра:", swap_case(input_string))
print("2) Замена последнего вхождения:", replace_last_occurrence(S, S1, S2))
print("3) Количество слов с тремя 'А':", count_words_with_three_As(input_string))
print("4) Проверка чередования знаков:", check_alternating_signs(arr))
print("5) Удаление дубликатов:", remove_duplicates(arr))
 
Преобразовать все строчные буквы в прописные и наоборот: your_string = "Пример строки для преобразования"
print(''.join(map(lambda x: x.lower() if x.isupper() else x.upper(), your_string))) 2 Заменить последнее вхождение строки S1 на строку S2 в строке S: S = "Это пример строки для замены последнего вхождения"
S1 = "строки"
S2 = "текста"
print(S[::-1].replace(S1[::-1], S2[::-1], 1)[::-1] ) 3 Найти количество слов, содержащих ровно три буквы "А": your_string = "ЭТО СТРОКА С ТРЕМЯ БУКВАМИ ААА И ЕЩЕ СЛОВАМИ БЕЗ А"
print(len(list(filter(lambda word: word.count('А') == 3, your_string.split())))) 4 Проверить чередование положительных и отрицательных чисел в массиве: your_array = [1, -2, 3, -4, 5, -6]
print(0 if all(x*y < 0 for x, y in zip(your_array, your_array[1:])) else next(i for i, (x, y) in enumerate(zip(your_array, your_array[1:]), 1) if x*y >= 0)) 5 Удалить все одинаковые элементы, оставив первые вхождения: your_array = [1, 2, 3, 1, 2, 4, 5, 3]
print(list(__import__('functools').reduce(lambda x, y: x + [y] if y not in x else x, your_array, [])))
 
Женщина программист горе в семье
 
Назад
Сверху