Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Python задача решить

Мейржан Байконсов Ученик (173), на голосовании 1 месяц назад
words=input("enter:")
maxw = ""
for i in words:
if words > maxw:
maxw = words

print(maxw)


надо сделать чтобы выходил самое длинное слово из в
веденых без использования len,split без всяких других функций
Голосование за лучший ответ
Петя Морозов Мастер (1624) 2 месяца назад
 words = input("Enter words separated by spaces: ") 
maxw = ""
current_word = ""
max_length = 0
current_length = 0

for char in words + " ": # Добавляем пробел в конце, чтобы обработать последнее слово
if char != " ":
current_word += char
current_length += 1
else:
if current_length > max_length:
max_length = current_length
maxw = current_word
current_word = ""
current_length = 0

print("The longest word is:", maxw)
так попробуй
Мейржан БайконсовУченик (173) 2 месяца назад
с gpt тоже так делал нужно самому без всяких других перемен исправить мой код
Петя Морозов Мастер (1624) Мейржан Байконсов, words = input("enter: ") maxw = "" current_word = "" for i in words: if i != " ": current_word += i else: if current_word > maxw: maxw = current_word current_word = "" if current_word > maxw: # Проверяем последнее слово maxw = current_word print(maxw)
speexz Мыслитель (7479) 2 месяца назад
Чтобы найти самое длинное слово из введённой строки без использования функций `len`, `split` и других, мы можем сделать это с помощью явного перебора символов в строке и подсчёта длины слов. Исправленный код будет выглядеть следующим образом:


 words = input("Введите строку: ")  

maxw = ""

current_word = ""

current_length = 0

max_length = 0



for char in words:

if char != " ": # Если символ не пробел, добавляем к текущему слову

current_word += char

current_length += 1

else: # Если символ пробел, проверяем длину текущего слова

if current_length > max_length:

maxw = current_word

max_length = current_length

current_word = ""

current_length = 0



# Проверка последнего слова

if current_length > max_length:

maxw = current_word



print("Самое длинное слово:", maxw)


**Объяснение алгоритма:**
1. Вводится строка `words`.
2. Перебираем каждый символ строки:
- Если символ не пробел, добавляем его к текущему слову `current_word` и увеличиваем длину `current_length`.
- Если встречаем пробел, сравниваем длину текущего слова с максимальной длиной. Если текущая длина больше, сохраняем слово как максимальное.
3. После цикла обрабатываем последнее слово, если строка не заканчивается пробелом.
4. Выводим самое длинное слово.

Этот подход работает корректно без использования встроенных функций для разделения или измерения длины строки.
Похожие вопросы