
Вопрос задан 26.10.2023 в 20:11.
Предмет Информатика.
Спрашивает Алексеев Руслан.
Написать программу на Python: 1. Использовать для решения задачи count. Дана строка, состоящая из
слов, которые разделенны пробелами. Определить, сколько в ней слов. 2. Дана строка. Заменить в этой строке все буквы h на букву H. В первом слове первой буквы это не учитывать, как и в последнем слове последней буквы. Пример: heHHo How are Hu Helloh

Ответы на вопрос

Отвечает Брылин Алексей.
1)
st = str(input("Введите: "))
st.rstrip()
print('Довжина:',st.count(' ')+1)
st = str(input("Введите: "))
st.rstrip()
print('Довжина:',st.count(' ')+1)



Отвечает Князев Илья.
Задача 1. Код, предложенный Budzsergiy777p0i27m наиболее подходит для решения, если слова разделены только одним пробелом. Решение задачи ниже аналогично (удалить пробелы в начале и в конце строки, затем посчитать пробелы, увеличить на 1 результат и вывести на экран)
Программа:
print(input().strip().count(' ')+1)
Задача 2. Здесь следует учесть, что строка является неизменяемым элементом, т.е. напрямую символ в строке изменить нельзя, но можно получить два среза строки до и после буквы 'h' и затем склеить первый срез + большая буква 'H' + второй срез. Например, строка
'abchdef' -> 'abc'+'H'+'def'. А чтобы не захватить первую и последнюю букву h, нужно найти их индексы в строке и затем обрабатывать только часть строки между первой и последней буквой h.
Программа:
x=input() #ввод строки
n1=x.find('h') #находим индекс первого вхождения буквы h
n2=x.rfind('h') #находим индекс последнего вхождения буквы hy=x[n1+1:n2] #выбираем срез строки после первого вхождения
#буквы h и до последнего вхождения буквы h
while y.find('h')!=-1: #пока в срезе есть буква h y=y[:y.find('h')]+'H'+y[y.find('h')+1:] #заменить малую букву h на H
print(x[:n1+1]+y+x[n2:]) #вывод строки до первой буквы h+результат
#замен в срезе h на H + вывод строки после
# последней буквы h
Программа:
print(input().strip().count(' ')+1)
Задача 2. Здесь следует учесть, что строка является неизменяемым элементом, т.е. напрямую символ в строке изменить нельзя, но можно получить два среза строки до и после буквы 'h' и затем склеить первый срез + большая буква 'H' + второй срез. Например, строка
'abchdef' -> 'abc'+'H'+'def'. А чтобы не захватить первую и последнюю букву h, нужно найти их индексы в строке и затем обрабатывать только часть строки между первой и последней буквой h.
Программа:
x=input() #ввод строки
n1=x.find('h') #находим индекс первого вхождения буквы h
n2=x.rfind('h') #находим индекс последнего вхождения буквы hy=x[n1+1:n2] #выбираем срез строки после первого вхождения
#буквы h и до последнего вхождения буквы h
while y.find('h')!=-1: #пока в срезе есть буква h y=y[:y.find('h')]+'H'+y[y.find('h')+1:] #заменить малую букву h на H
print(x[:n1+1]+y+x[n2:]) #вывод строки до первой буквы h+результат
#замен в срезе h на H + вывод строки после
# последней буквы h



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для решения задачи мы можем использовать методы строк в Python. Вот программа, которая выполняет оба задания:
pythondef count_words(input_string):
# Разбиваем строку на слова, используя пробел как разделитель
words = input_string.split()
# Возвращаем количество слов в строке
return len(words)
def replace_h(input_string):
# Разбиваем строку на слова
words = input_string.split()
# Обходим каждое слово и заменяем 'h' на 'H', исключая первую и последнюю букву
for i in range(len(words)):
if len(words[i]) > 2: # Проверяем, что длина слова больше 2
words[i] = words[i][0] + words[i][1:-1].replace('h', 'H') + words[i][-1]
# Объединяем слова обратно в строку
result_string = ' '.join(words)
return result_string
# Пример использования
input_string = "heHHo How are Hu Helloh"
word_count = count_words(input_string)
modified_string = replace_h(input_string)
print(f"Количество слов в строке: {word_count}")
print(f"Измененная строка: {modified_string}")
Этот код разделяет входную строку на слова и выполняет оба задания: считает количество слов и заменяет 'h' на 'H' внутри слов, исключая первую и последнюю букву.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili