![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
niga |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: дима Репутация: ![]() ![]() ![]() |
Привет всем, кто решил посмотреть мой просящий sos топик.
Мне в пятницу надо сдать задачу, а я ни как не могу её осилить. Если кто-то знает, как решить такую задачу очень прошу вас помочь мне. Заранее всем спасибо и большой respect. Текст задачи: Дано натуральное число N. Указать самую длинную неубывающую последовательность цифр числа N. |
Bokul |
![]()
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 117 Пол: Мужской Реальное имя: Богдан Репутация: ![]() ![]() ![]() |
Цитата Мне в пятницу Значит у тебя еще полно времени для прочтения Faq'а и написания проги ![]() Цитата Дано натуральное число N. Указать самую длинную неубывающую последовательность цифр числа N. Алгоритм:
Сообщение отредактировано: volvo - 3.11.2006 19:19 -------------------- Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее. |
niga |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: дима Репутация: ![]() ![]() ![]() |
Написал код программы, но она не компилируется выходит ошбка которую я не могу понять.
Я в паскале ваще просто ноль не знаю зачем на экономическом надо его изучать. Посмотрите что я написал не так. program N_3; Сообщение отредактировано: volvo - 3.11.2006 19:20 |
Michael_Rybak |
![]()
Сообщение
#4
|
Michael_Rybak ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 046 Пол: Мужской Реальное имя: Michael_Rybak Репутация: ![]() ![]() ![]() |
Уточни условие. Что значит "неубывающую последовательность цифр числа N".
Имеется ввиду подпоследовательность идущих *подряд* цифр? Или подпоследовательность, которую можно получить, выкинув часть цифр? Например, для числа 15234517 ответ 2345 или 123457? Решение Bokula - для первого варианта. P.S. Вот исправленный код: 1. Не компилиось из-за "for i:=1 to s[i-1] do". Нужна функция length. 2. Цикл делаем все-таки не до предпоследнего, а до последнего символа, чтобы работало на строках длины 1. 3. Читаем сразу строку (readln(s)), чтобы работало на длинных. 4. Переменную b инициализируем единицей а не нулем, чтобы учитывать последний символ найденной последовательности. 5. Не забываем в случае s[i+1]>= s[i] делать буф:=буф+1 ![]() 6. Ответ выводим в самом конце, а не после каждого найденного улучшения. program N_3; |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
![]() if b>k then begin Почему бы не заменить на: begin? ![]() |
niga |
![]()
Сообщение
#6
|
Группа: Пользователи Сообщений: 5 Пол: Мужской Реальное имя: дима Репутация: ![]() ![]() ![]() |
А как вывести саму последовательность цифр, а не только её длину?
![]() |
Bokul |
![]()
Сообщение
#7
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 117 Пол: Мужской Реальное имя: Богдан Репутация: ![]() ![]() ![]() |
Цитата А как вывести саму последовательность цифр, а не только её длину? niga, ты хочешь научится програмировать или нет? Предлагай свои варианты, а мы их будем поправлять. Если же тебе надо просто отвязаться от учителя - Задачи на заказ -------------------- Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее. |
Michael_Rybak |
![]()
Сообщение
#8
|
Michael_Rybak ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 046 Пол: Мужской Реальное имя: Michael_Rybak Репутация: ![]() ![]() ![]() |
Цитата(volvo) Почему бы не заменить на: Согласен. Я не заменил, потому что хотел делать только те изменения, без которых, на мой взгляд, не обойтись. А как вывести саму последовательность цифр, а не только её длину? ![]() Сейчас ты запоминаешь только длину - в переменной к. А ты запоминай не только длину, а всё, что необходимо, чтобы в конце работы ты мог вывести эту подстроку. |
![]() ![]() |
![]() |
Текстовая версия | 22.06.2025 9:56 |