1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
| V.k.l.chr.by |
7.05.2008 23:42
Сообщение
#1
|
|
Новичок ![]() Группа: Пользователи Сообщений: 29 Пол: Мужской Репутация: 0 |
Будьте добры,уважаемые форумчане можете исправить ошибку в данном коде программе.Уж очень срочно надо.Буду очень признателен.А вот и само условие и код программы:
Исходные данные находятся в текстовом файле. Разделитель – конец строки. Программа запрашивает имя входного и результирующего (отсортиро-ванного) файла. Использовать динамическое распределение памяти.И надо сортировать строки методом пузырька.Тут как бы всё правилььно выполняет,только вот пишет ошибку .. и как мне подсказывали что-то с указателями.Или после кода программы"void main(void)..." #include<stdio.h>P.S.Прошу прощение,за повтор темы.Хотел удалить ,но не нашёл. Сообщение отредактировано: volvo - 27.11.2009 12:22 |
![]() ![]() |
| V.k.l.chr.by |
15.05.2008 22:03
Сообщение
#2
|
|
Новичок ![]() Группа: Пользователи Сообщений: 29 Пол: Мужской Репутация: 0 |
Вообщем всё понятно,но возникли небольшие вопросики.
1-Почему,в коде программы нельзя было просто написать до N,а не n_lines? 2-И у Вас в комментарии написано,что "до n_lines - 1"Причём тут единица. 3-И если не трудно,можно ещё пару слов об "os"ЧТо это такое?Я как понял,это назваине потока,благодаря чему будет копироваться троки в файл.Я так понял? - // для всех номеров строк от 0 до n_lines - 1 (в С++ индексация всегда начинается с 0) Я так подумал вышлю остальной код программы(если не трудно прокментировать его),чтобы после сего,по частям разбарал бы и если что вопрсоызадавал бы.Думаю так быстрее будет,чем по частям высылать и так же уже нужно скоро уже относить программу. p/S/Я ещё раз хочу выразить благодарность за помощь студенту. - void sort(char* ptr[], int n_lines) {
|
| volvo |
15.05.2008 23:19
Сообщение
#3
|
|
Гость |
1-Почему,в коде программы нельзя было просто написать до N,а не n_lines? Ну, если тебе удобнее до N, то пиши до N, я привык давать "говорящие" имена переменным...в комментарии написано,что "до n_lines - 1"Причём тут единица. При том, что если число строк это n_lines, то значит, их индексы - от 0 до (n_lines-1)можно ещё пару слов об "os"ЧТо это такое? Это поток вывода, os (сокращение от output stream)... Понимаешь в чем дело... Когда запускается программа на С++, создаются несколько потоков. Один (cout, стандартный вывод на экран) - для вывода данных, другой (cin, стандартный ввод с клавиатуры) - для ввода данных в программу. Ну, есть еще cerr/clog, но это пока не важно... Так вот, cout имеет тип ostream. От этого же типа унаследован и файловый поток (ofstream), то есть, в свою процедуру я могу передать (по правилу совместимости типов) не только сам cout, но и любого его наследника, и если я передам файловый поток, то все то, что должно было бы напечататься на экране, будет выведено в файл... Чем я и воспользовался... Когда мне нужно - вывожу данные на монитор, а когда нужно - в файл...Теперь что касается остальной программы: Это - самая обычная сортировка "пузырьком" массива ptr, содержащего n_lines строк. Алгоритм этот найдешь на любом сайте, да хоть у нас в FAQ-е по Паскалю: Методы сортировок
По-моему несложно... |
V.k.l.chr.by Ошибка в коде программы(С++) 7.05.2008 23:42
volvo Можно уточнить? зачем понадобилось перемешивать чи... 7.05.2008 23:57
V.k.l.chr.by Вообщем я просто брал нечто похожую программу с ла... 8.05.2008 0:08
volvo Неправильно... Разбираться надо, ЧТОБЫ программа з... 8.05.2008 1:27
V.k.l.chr.by Просто в условии дано ,чтобы было динамичесткое ра... 8.05.2008 1:30
V.k.l.chr.by Проверил ещё раз,всё ровно русские символы не сорт... 9.05.2008 12:46
volvo Ну, так возьми и чуть-чуть подкорректируй write_li... 9.05.2008 15:08
V.k.l.chr.by Ух..выручили Вы меня всё тепреь работает!... 9.05.2008 18:26
volvo Задавай, конечно... Для этого форум и существует -... 9.05.2008 19:33
V.k.l.chr.by И так мне уже в начале не понятно первые строчки.А... 10.05.2008 23:40
volvo
// функция write_lines описывается как void - не ... 11.05.2008 0:04
V.k.l.chr.by Спасибо.Но и в правду как бы всё понятно.
Так же х... 16.05.2008 0:42
volvo Дело не в диапазоне... Дело в том, что память в пр... 16.05.2008 1:49![]() ![]() |
|
Текстовая версия | 8.12.2025 20:00 |