Помогите с задачей на Python
Макс писал сочинение по литературе. Сочинение длинное, мыслей много, а писать от руки Макс не любит. Поэтому он стал сокращать слова, оставляя только первую и последнюю буквы с дефисом между ними.
Дано слово. Выведи, как его написал Макс.
Голосование за лучший ответ
s = input()
print(f»-«)
a=input()
print(a[0]+ “-“ + a[0]
Похожие вопросы
Ваш браузер устарел
Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.
Решение модуля 6.2 «Поколение Python»
Все решения и ответы на модуль (урок) 6.2 из программы «Поколение Python: курс для начинающих».
Целью этого занятия будет научиться работать со строками и производить операции с ними.
Что покажет приведенный ниже фрагмент кода?
mystr = ‘да’
mystr = mystr + ‘нет’
mystr = mystr + ‘да’
print(mystr)
Ответ: данетда
Что покажет приведенный ниже фрагмент кода?
str1 = ‘1’
str2 = str1 + ‘2’ + str1
str3 = str2 + ‘3’ + str2
str4 = str3 + ‘4’ + str3
print(str4)
Ответ: 121312141213121
Что покажет приведенный ниже фрагмент кода?
mystr = ‘123’ * 3 + ‘456’ * 2 + ‘789’ * 1
print(mystr)
Ответ: 123123123456456789
Напишите программу, которая выводит текст:
«Python is a great language!», said Fred. «I don’t ever remember having this much fun before.»
Примечание. Используйте конкатенацию строк.
# Используем конкатенацию строк. a = '"Python is a great language!", said Fred. ' b = '"I don' c = "'t ever remember having this much " d = 'fun before."' print(a + b + c + d)

What’s Your Name?
Напишите программу, которая считывает с клавиатуры две строки – имя и фамилию пользователя и выводит фразу:
«Hello [введенное имя] [введенная фамилия]! You have just delved into Python».
a = input() # Получаем имя b = input() # Получаем фамилию print("Hello", a, b+"!", "You have just delved into Python")

Футбольная команда
Напишите программу, которая считывает с клавиатуры название футбольной команды и выводит фразу:
«Футбольная команда [введённая строка] имеет длину [длина введённой строки] символов».
command = input() # Получаем название футбольной команды dlina = len(command) # Получаем длину текста print('Футбольная команда', command, 'имеет длину', dlina, 'символов')

Три города
Даны названия трех городов. Напишите программу, которая определяет самое короткое и самое длинное название города.
a = input() # получаем первый город b = input() # получаем второй город c = input() # получаем третий город # Сравнение длин строк 'a', 'b' и 'c' с помощью функции min(), чтобы определить минимальную длину if min(len(a), len(b), len(c)) == len(a): print(a) # Вывод строки 'a', так как она имеет наименьшую длину # Сравнение длин строк 'a', 'b' и 'c' с помощью функции min(), чтобы определить минимальную длину elif min(len(a), len(b), len(c)) == len(b): print(b) # Вывод строки 'b', так как она имеет наименьшую длину else: print(c) # Вывод строки 'c', так как она имеет наименьшую длину # Сравнение длин строк 'a', 'b' и 'c' с помощью функции max(), чтобы определить максимальную длину if max(len(a), len(b), len(c)) == len(a): print(a) # Вывод строки 'a', так как она имеет наибольшую длину # Сравнение длин строк 'a', 'b' и 'c' с помощью функции max(), чтобы определить максимальную длину elif max(len(a), len(b), len(c)) == len(b): print(b) # Вывод строки 'b', так как она имеет наибольшую длину else: print(c) # Вывод строки 'c', так как она имеет наибольшую длину

Арифметические строки
Вводятся 3 строки в случайном порядке. Напишите программу, которая выясняет можно ли из длин этих строк построить возрастающую арифметическую прогрессию.
a = len(input()) # получаем 1 строку b = len(input()) # получаем 2 строку c = len(input()) # получаем 3 строку # Проверяет, является ли сумма длин строк 'a', 'b' и 'c' равной половине суммы наименьшей и наибольшей длин, # умноженной на 3. Если это условие выполняется, выводит "YES", иначе выводит "NO". if a + b + c == (min(a, b, c) + max(a, b, c)) / 2 * 3: print("YES") # Выводит "YES", если условие выполнено else: print("NO") # Выводит "NO", если условие не выполнено
Какие значения может принимать строковая переменная s , чтобы в результате выполнения кода было выведено слово «YES»?
if s in ‘abc123abc’:
print(‘YES’)
else:
print(‘NO’)
- s = ’23’
- s = ‘123abc’
- s = ‘3ab’
- s = ‘a’
- s = ‘1’

Цвет настроения синий
Напишите программу, которая считывает одну строку, после чего выводит «YES», если в введенной строке есть подстрока «синий» и «NO» в противном случае.
s = input() # получаем строку # Проверяет, содержит ли строка 's' подстроку 'синий'. Если да, выводит "YES", иначе выводит "NO". if 'синий' in s: print('YES') # Выводит "YES" else: print('NO') # Выводит "NO"

Отдыхаем ли?
Напишите программу, которая считывает одну строку, после чего выводит «YES», если в введённой строке есть подстрока «суббота» или «воскресенье», и «NO» в противном случае.
s = input() # получаем строку # Проверяет, содержит ли строка 's' подстроку 'суббота' или подстроку 'воскресенье'. # Если хотя бы одна из этих подстрок содержится в строке 's', то выводит "YES", иначе выводит "NO". if 'суббота' in s or 'воскресенье' in s: print('YES') # Выводит "YES" else: print('NO') # Выводит "NO"

Корректный email
Будем считать email адрес корректным, если в нем есть символ собачки (@) и точки. Напишите программу проверяющую корректность email адреса.
str = input() # получаем строку # Проверяет, содержит ли строка 'str' символ '@' и символ '.'. # Если и символ '@', и символ '.' содержатся в строке 'str', то выводит "YES", иначе выводит "NO". if '@' in str and '.' in str: print('YES') # Выводит "YES" else: print('NO') # Выводит "NO"
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы
Т2. Задачи на работу с символами строки
Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи.
Решены задачи 1-16, 19-23. Не решены: 17, 18, 24-28.
Задачи
Т2.1. Дано слово. Вывести на экран его третий символ.
Т2.2. Дано слово. Вывести на экран его последний символ.
Т2.3. Дано слово. Вывести на экран его k-й символ.
Т2.4. Дано слово. Определить, одинаковы ли второй и четвертый символы в нем.
Т2.5. Дано слово. Верно ли, что оно начинается и оканчивается на одну и ту же букву?
Т2.6. Даны два слова. Верно ли, что первое слово начинается на ту же букву, на которую заканчивается второе слово?
Т2.7. Дано слово. Получить и вывести на экран буквосочетание, состоящее из его второго и четвертого символа.
Т2.8. Дано слово. Получить и вывести на экран буквосочетание, состоящее из его третьего и последнего символа.
Т2.9. Дано слово. Получить его часть, образованную второй, третьей и четвертой буквами.
Т2.10. Дано слово, состоящее из четного числа букв. Вывести на экран его первую половину, не используя оператор цикла.
Т2.11. Дано слово. Получить его часть, образованную идущими подряд буквами, начиная с m-й и кончая n-й.
Т2.12. Из слова яблоко путем «вырезок» и «склеек» его букв получить слова блок и око.
Т2.13. Из слова информатика путем «вырезок» и «склеек» его букв получить слова форма и тик.
Т2.14. Из слова вертикаль путем «вырезок» и «склеек» его букв получить слова тир и ветка.
Т2.15. Из слова программа путем «вырезок» и «склеек» его букв получить слова ром и рампа.
Т2.16. Из слова трос путем «вырезок» и «склеек» его букв получить слова сорт, рост и торс.
Т2.17. Из слова клоун путем «вырезок» и «склеек» его букв получить слова уклон, кулон и колун.
Т2.18. Из слова апельсин путем «вырезок» и «склеек» его букв получить слово спаниель.
Т2.19. Из слова вирус путем замены его букв получить слово фокус.
Т2.20. Из слова курсор путем замены его букв получить слово танцор.
Т2.21. Из слова пробел путем замены его букв получить слово продел.
Т2.22. Из слова строка путем замены его букв получить слово строфа.
Т2.23. Из слова муха путем замены его букв получить слово слон.
Т2.24. Из слова тетрадь путем замены его букв получить слово дневник.
Т2.25. Дано слово из четного числа букв. Поменять местами его половины. Задачу решить двумя способами:
1) без использования оператора цикла;
2) с использованием оператора цикла.
Т2.26. Дано слово из 12 букв. Поменять местами его трети следующим образом:
а) первую треть слова разместить на месте третьей, вторую треть — на месте первой, третью треть — на месте второй;
б) первую треть слова разместить на месте второй, вторую треть — на месте третьей, третью треть — на месте первой.
Т2.27. Дано слово. Переставить первые три и последние три буквы, сохранив порядок их следования. Задачу решить двумя способами:
1) без использования оператора цикла;
2) с использованием оператора цикла.
Т2.28. Дано слово. Перенести первые k его букв в конец. Задачу решить двумя способами:
1) без использования оператора цикла;
2) с использованием оператора цикла.
NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.
Дано предложение. Вывести буквы, которые содержатся в максимальном количестве слов
Нужно вывести буквы которые содержаться в максимальном количестве слов. Строки для меня тема новая поэтому не совсем понимаю как с ними работать попытался по советам сделать(создать массив для букв с нулевыми значениями и дальше проверять слова), но пишет что недопустимо для class, хотелось бы понять что это значит и как это исправить. Также я понимаю что с реализацией кода беда, но не понимаю как лучше сделать ее. Помогите пожалуйста. Заранее благодарю.
using namespace std; int main() < setlocale(LC_ALL, "RUS"); int max = INT_MIN; string str; string razdel = ". ;- "; //Знаки пунктуации и пробел cout for (int i = 0; i < 2; ++i) < for (int j = 0; j < 59; ++j) < a[1][j] = 0; >> string::size_type pos = 0, k; string::size_type max = 0; k = str.find_first_of(razdel); //Ищем конец первого слова while (k != string::npos) < //Пока находятся слова string word = str.substr(pos, k - pos); //Копируем слово for (int i = 0; i < word.length(); ++i) < for (int j = 0; j < alphabet.length(); ++j) < if(str[i] == alphabet[j])< a[1][j]++; >> > k = str.find_first_of(razdel, pos); //Ищем конец следующего слова > for (int i = 0; i < 2; ++i) < for (int j = 0; j < 59; ++j) < if (a[1][j] >max) < max = a[1][j]; >> > cout
Отслеживать
задан 12 дек 2020 в 14:45
13 4 4 бронзовых знака
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Вот пример кода:
string str; string razdel = ". ;- "; //Знаки пунктуации и пробел string alphabet = "abcdefghijklmnopqrstuvwxyzабвгдеёжзийклмнопрстуфхцчшщъыьэюя"; int size = alphabet.size(); int* a = new int[59]< 0 >; cout > ++j; > while (j < size && t < pos); //если t == pos, то мы рассмотрели все слово k = str.find_first_of(razdel, ++pos); //Ищем конец следующего слова >int max = INT_MIN; int m_index = 0; for (int j = 0; j < size; ++j) < if (a[j] >max) < max = a[j]; m_index = j; >> cout
Если вы не будете дополнять alphabet , то можно было избавится от цикла, который пробегает по алфавиту, а использовать коды букв по ASCII таблице, что гораздо быстрее было бы.
Так же лично я бы вместо find_first_of и строки под разделители написал бы функцию типа bool isRazdel(char symb) <. >, но это опять токи, если вы не собираетесь дополнять список разделителей.
Все идеи, которые я предложил хоть и ускоряют работу, но делают алгоритм менее гибким под изменения. (списка букв, разделителей)