![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
LyaLya |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Женский Репутация: ![]() ![]() ![]() |
хм, вот задачка, найдите, плиз ошибку, я ее мучаю уже несколько недель
Требование: В программе описать массив строк. Исходный текст считать из файла, созданного в любом текстовом редакторе. Результат обработки вывести на экран, а так же в итоговый текстовый файл. Задание: Определить количество слов, поменять местами четные и нечетные слова. program pr6; |
LyaLya |
![]()
Сообщение
#2
|
Группа: Пользователи Сообщений: 7 Пол: Женский Репутация: ![]() ![]() ![]() |
ну хоть одно умное слово напишите, хоть одну фразочку по задачке, плиззззз
|
amega |
![]()
Сообщение
#3
|
![]() ? ![]() ![]() ![]() Группа: Пользователи Сообщений: 283 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вопервых ты обявила масив
f:array[1..p] of string;тоесть при копирование их текстового файла будет копиротся строка целиком; а в этом цикле while not eoln(ff) do <<а в этом цикле у тебя стоит eoln (тоесть пока не конец стоки) нада eof(пока не конец файла) да и фаловая переменная ff нигде не обявлена? а дальше тежело разобратся что делает програма ![]() Сообщение отредактировано: amega - 25.12.2008 19:52 |
Lapp |
![]()
Сообщение
#4
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Соблюдай разумный формат, иначе ни ты сама, ни кто либо еще не сможет разобраться в твоем творении. Я (с некоторым трудом) отформатировал - посмотри и постарайся делать в том же духе.
const При описании файловой переменной, нужно описывать ее имя, а не имя файла на диске (я исправил). Программа теперь по крайней мере компилируется. Разбирайся дальше. Если будут еще вопросы - приходи. PS Да, еще я выкинул зло - uses CRT и ClrScr. Советую избегать использования CRT, где это не жизненно необходимо. А ClrScr - вообще непонятно, зачем. Имеет смысл сохранять прежние результаты для простоты отладки. Если программа отлажена и в эксплуатации, то стирать пользователю экран вообще может оказаться медвежьей услугой. Надо будет - сам сотрет. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
LyaLya |
![]()
Сообщение
#5
|
|||
Группа: Пользователи Сообщений: 7 Пол: Женский Репутация: ![]() ![]() ![]() |
вот что-то переделала:
program pr6; но мне сказали, что проверку четности мона сделать с помощью odd(x) и т.к. необходим массив строк, то надо сделать 2-мерный массив по строкам и символам в строке. как это сделать?
|
|||
Lapp |
![]()
Сообщение
#6
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
но мне сказали, что проверку четности мона сделать с помощью odd(x) и т.к. необходим массив строк, то надо сделать 2-мерный массив по строкам и символам в строке. как это сделать? Я думаю, имелось в виду, что надо работать не с дополнительной строкой s, а непосредственно со строкой-элементом массива a[i]. Тогда обращение к отдельному символу будет таким же, как обращение к двумерному массиву:a[i][j] - или даже можно записать так: a[i,j] Odd - это тоже просто. Odd в переводе с английского означает "нечетный". Условие : if n mod 2=1 then ... - эквивалентно такому: if Odd(n) then ... Или, наоборот: if n mod 2=0 then ... - эквивалентно такому: if not Odd(n) then ... У меня другой вопрос. В условии задачи абсолютно ничего не говорится про предложения. Есть про строки, есть про слова - и ничего про предложения. Однако, в своей программе ты пытаешься обрабатывать точку отдельно от пробела. Почему? Это ты неправильно написала условие ( ![]() Вот, смотри, я сделал тебе программу по условию (то есть без учета точек). В ней мне совершенно не потребовалось пользоваться четностью в изначальном смысле - я просто чередую слова. var PS вставил комменты.. PPS еще добавил комментариев.. Сообщение отредактировано: Lapp - 27.12.2008 10:45 -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
LyaLya |
![]()
Сообщение
#7
|
Группа: Пользователи Сообщений: 7 Пол: Женский Репутация: ![]() ![]() ![]() |
условие и требования с методички
![]() ![]() ![]() как переделать??? ![]() ![]() |
Lapp |
![]()
Сообщение
#8
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
как переделать??? А ты вообще смотришь, что тебе пишут?.. ![]() ![]() ![]() В моем коде все именно так и сделано. Из того, что ты неверно трактуешь условие, вовсе не следует, что другие делают так же. Вывод на экран вообще убери - про него в условии нету, он только для отладки. Переменная s в том виде, как я сделал - вряд ли лишняя. Но в принципе, можно и без нее - только в условии про это не сказано. Про массив - сказано, потому я с ним и сделал.. Только помогать тебе, когда ты больше половины пропускаешь мимо ушей, как-то желание пропадает.. ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
LyaLya |
![]()
Сообщение
#9
|
Группа: Пользователи Сообщений: 7 Пол: Женский Репутация: ![]() ![]() ![]() |
Lapp, я все прочитала, спасибки огромное, просто препод смотрел мой тот листинг, вот я к нему и пристала... а прога, которую вы мне написали меняет местами только слова в первой строчке...
|
Lapp |
![]()
Сообщение
#10
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
прога, которую вы мне написали меняет местами только слова в первой строчке... Постарайся запомнить: если ты замечаешь в программе "неправильное функционирование" (взято в кавычки, потому что на этом этапе это только твое мнение), то прежде, чем делать выводы (типа "меняет слова только в первой строчке") либо разберись в вопросе сама, либо приведи фактический материал.Вот, я тебе привожу результат ее работы: файл o.txt : Код Humpty Dumpty sat on a wall. Humpty Dumpty had a great fall. All the king's horses and all the king's men Couldn't put Humpty together again. файл o1.txt : Код Dumpty Humpty on sat wall a. Dumpty Humpty a had fall great. the All s'king and horses the all s'king men t'Couldn Humpty put again together. Как видишь - слова меняются местами во всех четырех строках! Если тебя не затруднит и не отвлечет от более важных дел, не могла бы ты сделать так же со своим примером, в котором у тебя, как ты думаешь, ошибка.. Подозреваю, что ты сделала свою вторую строчку из цифр. А цифры не входят в множество букв.. хотя и похожи на них внешне ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 14:04 |