![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Ozzя |
![]()
Сообщение
#21
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Можно проще. Сразу при считывании строк из файла находи минимальные из них.
|
Clerick |
![]()
Сообщение
#22
|
![]() студент.. ![]() ![]() ![]() Группа: Пользователи Сообщений: 287 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Считывание строк в цикле?
-------------------- После дождя обязательно выглянет солнце)
|
Ozzя |
![]()
Сообщение
#23
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ну да
while not eof(f) do |
мисс_граффити |
![]()
Сообщение
#24
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
"найти самые короткие строки" - это вывести их номера или их сами?
Сообщение отредактировано: мисс_граффити - 25.03.2006 19:02 -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Clerick |
![]()
Сообщение
#25
|
![]() студент.. ![]() ![]() ![]() Группа: Пользователи Сообщений: 287 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Цитата(мисс_граффити @ 25.03.2006 20:59) вывести их номера или их сами Номера! ![]() to Оззя uses Выводит 4. text.txt: 6 5 4 5 6 4 4 5 6 2 3 6 7 7 8 3 4 4 1 3 4 4 2 3 3 3 3 3 3 1 Где опять лопухнулся? Сообщение отредактировано: volvo - 2.11.2006 12:50 -------------------- После дождя обязательно выглянет солнце)
|
мисс_граффити |
![]()
Сообщение
#26
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
если номера - тогда лучше правда массив...
она тебе выводит длину минимальной строки... а чему она должна быть равна? у меня с тем же текстом выводит 3: то есть правильно (последняя строка: 3 пробел 1). может, у тебя там еще какой-то символ? Сообщение отредактировано: мисс_граффити - 25.03.2006 19:30 -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Clerick |
![]()
Сообщение
#27
|
![]() студент.. ![]() ![]() ![]() Группа: Пользователи Сообщений: 287 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
у меня с тем же текстом выводит 3: то есть правильно (последняя строка: 3 пробел 1). может, у тебя там еще какой-то символ? Да нет вроде ничего нет. Хотя сейчас посмотрю. Все теперь все в норме! А как вывести номер строки? Сообщение отредактировано: Clerick - 25.03.2006 19:56 -------------------- После дождя обязательно выглянет солнце)
|
мисс_граффити |
![]()
Сообщение
#28
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
для этого его надо отслеживать.
например, делай так, как изначально собирался - через массив и выводи номера минимальных элементов. только здесь возникнет вопрос по поводу размера массива... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
hardcase |
![]()
Сообщение
#29
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: ![]() ![]() ![]() |
Нужно просто считать итерации и запоминать итерацию, на которой обнаружена самая короткая сторока.
кроме того у вас ошибка вот здесь: assign (f, 'text.txt'); -------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
мисс_граффити |
![]()
Сообщение
#30
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Нужно просто считать итерации и запоминать итерацию, на которой обнаружена самая короткая сторока. кроме того у вас ошибка вот здесь... у нас по условию таких строк несколько. сколько именно - заранее не знаем. по-хорошему, надо проверять, есть ли вообще этот файлик ;) -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
hardcase |
![]()
Сообщение
#31
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: ![]() ![]() ![]() |
у нас по условию таких строк несколько. сколько именно - заранее не знаем. Так в чём проблема? Формируем список, каждый элемент которого будет содержать индекс строки. Вот и алгоритм: Если нашли строку короче, чем были до этого, то гробим предидущий список, и создаём новый (из 1 элемента) который заносим текущй индекс, если строка по длине такая же, то добавляем в текущий список. В конце просто выбрасываем этот список на печать. program FindAllMinStrings; Вот собсна. Делфю грузить неохота, но должно работать. Сообщение отредактировано: volvo - 2.11.2006 12:51 -------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
мисс_граффити |
![]()
Сообщение
#32
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Вот собсна. Делфю грузить неохота, но должно работать. Возможно... хотя у меня делфи на Assign ругается - предпочитает AssignFile. Но проблема в том, что списки в школе и в неспециализированных вузах не дают обычно. Сомневаюсь, что Clerick с ними сталкивался... соответственно, так решенная задача может вызвать подозрения препода. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Clerick |
![]()
Сообщение
#33
|
![]() студент.. ![]() ![]() ![]() Группа: Пользователи Сообщений: 287 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Но проблема в том, что списки в школе и в неспециализированных вузах не дают обычно. Сомневаюсь, что Clerick с ними сталкивался... соответственно, так решенная задача может вызвать подозрения препода. Это предыдущая тема, которую мы прошли(физмат профиль в школе)! Но решали лишь элементарные задачи. Поэтому большая просьба к Hardcase: поясни свой код!!! ![]() ![]() ![]() Зы: мой компилятор BP7 Сообщение отредактировано: Clerick - 26.03.2006 11:04 -------------------- После дождя обязательно выглянет солнце)
|
hardcase |
![]()
Сообщение
#34
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: ![]() ![]() ![]() |
Коментарии добавил. (вроде там и комментировать-то нечего - чай не Win32 API)
BP7 не имею - я его ВООБЩЕ никогда не имел и в глаза только в школе видел пару раз. Вот такие мы сирые и необразованные. FPC - нету, да и собсна, он мне не нужен. TMT лежал где-то, но и он, скорее, как экспонат лежит. Думаю, скомпилироваться должно, я только не знаю, BP7 поддерживает динамические строки, или нет? Возможно... хотя у меня делфи на Assign ругается - предпочитает AssignFile. есть у класса TPersistent метод Assign - вот и ругается делфи на него. Можно писать System.Assign(FileVariable, FileName); BP и TP это не откомпилируют 100 %, hardacase, тебе на кажется что раздел 32 битные компиляторы находится в другом месте ? Сообщение отредактировано: klem4 - 26.03.2006 11:47 -------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
Clerick |
![]()
Сообщение
#35
|
![]() студент.. ![]() ![]() ![]() Группа: Пользователи Сообщений: 287 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
BP и TP это не откомпилируют 100 %, hardacase, тебе на кажется что раздел 32 битные компиляторы находится в другом месте ? Не откомпилируют что? -------------------- После дождя обязательно выглянет солнце)
|
hardcase |
![]()
Сообщение
#36
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: ![]() ![]() ![]() |
Не знаю- не знаю, всё должно скомпилиться - вот посмотрел предыдущий вариант решения задачи - Clerick это скомпилит.
Только при чём тут вообще разрядность? На дворе 2006 год! Тут уже переходят на 64 разрядные машины. Мне казалось, что 16-бит компилеры благополучно вышли из употребления (померли) ещё 10 лет назад... Зачем вообще акцентироватся на этом? -------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
Clerick |
![]()
Сообщение
#37
|
![]() студент.. ![]() ![]() ![]() Группа: Пользователи Сообщений: 287 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Начались проблемы...
var lst: PElement ; = nil; Требует поставить ; в указанном месте... После того как ставлю, требует begin, а дальше говорит error in statement.... -------------------- После дождя обязательно выглянет солнце)
|
hardcase |
![]()
Сообщение
#38
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: ![]() ![]() ![]() |
А проинициализировать переменные в begin .. end - не светит?
-------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
Clerick |
![]()
Сообщение
#39
|
![]() студент.. ![]() ![]() ![]() Группа: Пользователи Сообщений: 287 Пол: Мужской Реальное имя: Дмитрий Репутация: ![]() ![]() ![]() |
Что значит проинициализировать и как это сделать?
-------------------- После дождя обязательно выглянет солнце)
|
hardcase |
![]()
Сообщение
#40
|
![]() code warrior ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 484 Пол: Мужской Реальное имя: Славен Репутация: ![]() ![]() ![]() |
Я не знаю, что такое BP7, он похоже не поддерживает инициализацию переменных при объявлении
Код var lst: PElement = nil; поэтому стоит заменить на Код var lst: PElement; ... begin lst:=nil; .... Assign(...) ... end. с другими переменными - аналогично -------------------- ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
|
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 1:37 |