IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Сортировка в текстовом файле
Jekaterina
сообщение 26.12.2006 23:06
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 61
Пол: Женский
Реальное имя: Jekaterina Lauce

Репутация: -  0  +


Добрый вечер! Не могу справиться с такой задачей: дан текстовой файл, содержащий названия городов
1) если он пуст, в файле вывода вывести слово nothing (с этим я справилась),
2) если названия городов начинаются на одну и ту же букву, то выводим города в файл в обратном порядке,
3) если города начинаются на разные буквы, то сортируем только по первой букве.
Помогите чайнику, пожалуйста!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Jekaterina
сообщение 28.12.2006 10:49
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 61
Пол: Женский
Реальное имя: Jekaterina Lauce

Репутация: -  0  +


Здравтвуйте! Может быть, кто-нибудь из вас посмотрит еще раз на мое решение? Я боюсь, начинаю просто зацикливаться на этой программе wacko.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
hiv
сообщение 28.12.2006 12:56
Сообщение #3


Профи
****

Группа: Пользователи
Сообщений: 660
Пол: Мужской
Реальное имя: Михаил

Репутация: -  11  +


Цитата(Jekaterina @ 28.12.2006 10:49) *

Здравтвуйте! Может быть, кто-нибудь из вас посмотрит еще раз на мое решение? Я боюсь, начинаю просто зацикливаться на этой программе wacko.gif

Зацикливалось потому, что строки читала оператором read, который не читает строку целиком. Чтоб узнать где зацикливается жми Ctrl+Break. Подсвеченная строка тебе покажет это место. А дальше пошагово выполняешь программу нажимая F8 и смотришь в Watch значения переменных.
Вот работающий код:
const
n=10;
var
str: array[1..n] of string;
f1, f2: text;
i, m: word;

Function sort(var strf: array of string; mm: word):string;
Var fl: boolean; temp: string; j: word;
begin
repeat
fl:=false;
for j:=0 to mm-2 do
if(strf[j][1]>strf[j+1][1]) then begin {сортируем по первой букве}
temp:=strf[j]; strf[j]:=strf[j+1]; strf[j+1]:=temp;
fl:=true;
end
else {если совпадают первые символы, то сортируем наоборот}
if (strf[j][1]=strf[j+1][1])and(strf[j]<strf[j+1]) then begin
temp:=strf[j]; strf[j]:=strf[j+1]; strf[j+1]:=temp;
fl:=true;
end;
until not (fl);
end;

begin
Assign (f1, 'pasts.in');
Assign (f2,'pasts.out');
Reset (f1);
Rewrite (f2);
i:=1;
while not(EoF(F1)) do begin
readln(F1, str[i]); {ведь строки читаем!}
if length(str[i])>0 then inc(i); {пустые строки пропускаем}
end;
m:=i;

sort(str, m);

for i:=1 to m-1 do writeln (f2,str[i]); {если выводить то все}

Close (f1);
Close (f2);
end.



--------------------
Никогда не жадничай. Свои проблемы с любовью дари людям!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Jekaterina   Сортировка в текстовом файле   26.12.2006 23:06
TS*   Добрый вечер! Не могу справиться с такой зада...   27.12.2006 12:57
Jekaterina   Спасибо, буду пробовать! :)   27.12.2006 13:12
Jekaterina   Господи, не идет-стек переполняется! Добрый че...   27.12.2006 14:18
мисс_граффити   только собралась написать про большие файлы :) fu...   27.12.2006 14:35
Jekaterina   Вот горе. Программа все рано висит на поцедуре сор...   27.12.2006 14:51
klem4   repeat fl:=true; for j:=0 to m...   27.12.2006 14:57
Jekaterina   Что же делать? Я, признаюсь, плохо разбираюсь в бу...   27.12.2006 15:19
klem4   repeat fl:=false; //<---------- ус...   27.12.2006 15:25
Jekaterina   Исправляла-исправляла, но все-таки не получается с...   27.12.2006 15:37
Jekaterina   Здравтвуйте! Может быть, кто-нибудь из вас пос...   28.12.2006 10:49
hiv   Здравтвуйте! Может быть, кто-нибудь из вас по...   28.12.2006 12:56
Jekaterina   Огромное спасибо! Только мне требуется считыва...   28.12.2006 13:14
hiv   Огромное спасибо! Только мне требуется считыв...   28.12.2006 13:17
Jekaterina   Любое слово может начинаться с большой или малой б...   28.12.2006 13:26
hiv   Любое слово может начинаться с большой или малой ...   28.12.2006 13:47
Jekaterina   Бог с ним, с этим мегабайтом! Мне бы сортировк...   28.12.2006 14:11
hiv   Тогда так:const n=10; var str: array[1..n] o...   28.12.2006 14:23
Jekaterina   :give_rose: Спасибо громаднейшее!!! Бу...   28.12.2006 14:43


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 2:19
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"