2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2
 
 Re: Спорный вопрос
Сообщение20.03.2010, 05:11 
опечатка
Буду раз -> буду рад)

 
 
 
 Re: Спорный вопрос
Сообщение20.03.2010, 14:22 
Скажите кто-нибудь, кто хоть что-то понимает в программировании) А то у меня опыта нет :(

 
 
 
 Re: Спорный вопрос
Сообщение21.03.2010, 05:05 
:?

 
 
 
 Re: Спорный вопрос
Сообщение22.03.2010, 01:04 
Аватара пользователя
Mikle1990,
 !  Подъем темы неинформативными сообщениями запрещен Правилами форума. Потерпите немного, может быть кто-нибудь Вам ответит.

 
 
 
 Re: Спорный вопрос
Сообщение22.03.2010, 01:34 
Аватара пользователя
Я мало понимаю в визуальном бейсике, но увидев слово мультилайн, подумал, что это похоже на флешевский скрипт.
Я бы сделал такой код
Длина симметричной строки равна 0.
Симметричная строка равна пробелу.
В цикле до исчерпания строк: получить очередную строку и её длину. Проверить строку на симметричность. Если она симметрична и её длина больше Длины симметричной строки, то переприсвоить Симметричную строку и Длину. Конец цикла.
Если Длина симметричной строки не равна 0 вывести Симметричную строку.
Вариант - переприсваивать, если длина не меньше Длины.
Проверку симметричности сделал бы сравнением равноотстоящих от конца символов в цикле от единицы до целой части от половины.

Хотя можно и получить весь буфер и ползти по нему, отыскивая начало строки, конец, определяя длину, проводя проверку.
Зачем самому выделять строки, выкидывать несимметричные... Это лишнее.
В чём трудность то?
Если нет навыка писать код сразу, пишите алгоритм, постепенно детализируйте.
Определитесь со входными данными. Сразу она Вам даны ли поступают непрерывно.

 
 
 
 Re: Спорный вопрос
Сообщение22.03.2010, 01:34 
Для простоты преположим, что Вы остановились на варианте вывода первой из самых длинных симметричных строк. В этом случае решение может быть примерно таким (псевдокод):
Код:
Dim longest as String ' сюда будем записывать самую длинную симметричную строку
Dim text() as String
text <- введенные строки
longest = ""
Для каждой строки s из text
    Если (s - симметричная строка) и (длина(s) > длинa(longest))
        longest = s
Вывести longest

Для разбивки текста, введенного пользователем, на отдельные строки можно воспользоваться функцией Split.
Функцию проверки симметричности строки напишите сами.

Неужели Вы сможете писать подобную программу 5 дней? :)

После того, как Вы напишите программу в таком простом варианте, можно будет немного усложнить ее, выводя все самые длинные симметричные строки.

 
 
 
 Re: Спорный вопрос
Сообщение22.03.2010, 01:37 
Аватара пользователя
Maslov, если честно, я испугался.

 
 
 
 Re: Спорный вопрос
Сообщение22.03.2010, 01:40 

(Оффтоп)

gris в сообщении #300717 писал(а):
Maslov, если честно, я испугался.
А я только совсем немного удивился :)

 
 
 [ Сообщений: 23 ]  На страницу Пред.  1, 2


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group