Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2009, 19:46   #1
Rankin
Новичок
Джуниор
 
Регистрация: 25.07.2009
Сообщений: 2
Сообщение Сортировка массива символов(Turbo Pascal 7.0))

Есть программа которая может считывать текстовую информацию из заранее созданного файла. Но нужно еще чтобы она умела отсортироовывать слова и удалять те которые содержат хотябы один не латинский символ и выводить на экран отсортированный массив. Если кому не трудно. Помогите пожалуйста.
Код:
var
  f:text;
  n:string;
begin
  writeln('Soderjimoe faila');
  assign(f,'c:\1.txt');
  reset(f);
  while not EOF(f) do
    begin
      readln(f,n);
      writeln(n);
    end;
    close(f);
    readln;
end.
Rankin вне форума Ответить с цитированием
Старый 25.07.2009, 20:47   #2
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

Код:
type
       DataItem = string[80];
       DataArray = array [1..80] of DataItem;

    { алгоритм быстрой сортировки для символьных строк }
     procedure QsString(var item: DataArray; count:integer);

       procedure qs(l, r: integer; var it:DataArray);
         var
         i, l: integer;
         x, y: DataItem;
       begin
         i := l; j := r;
         x := it[(l+r) div 2];
         repeat
           while it[i] < x do i := i+1;
           while x < it[j] do j := j-1;
           if i<=j then
           begin
             y := it[i];
             it[i] := it[j];
             it[j] := y;
             i := i+1; j := j-1;
           end;
         until i>j;
         if l<j then qs(l, j, it);
         if l<r then qs(i, r, it);
       end;
     begin
       qs(1, count, item);
     end; { конец быстрой сортировки }
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 25.07.2009, 22:47   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Rankin, Вам надо решить, как в Вашем файле содержатся слова - если каждое слово на отдельной строке - то читать их просто через readln(f, s) (как у Вас в примере), если же в файле на одной строке может быть несколько слов - то строчку прийдётся парсить (разбирать на слова). в последнем случае сразу определяйтесь, что в файле выступает как разделитель слов. Например, "ж/д" или "как-нибудь" это одно слово или два?.. Примеры разбора строки на слова Вы легко найдёте здесь на форуме.

Цитата:
и удалять те которые содержат хотябы один не латинский символ
чем удалять такие слова, проще проверять слово перед сохранением в массив, если есть символы s[i] not in ['a'..'z','A'..'Z'] then НЕ СОХРАНЯЕМ слово. И ещё, если слово содержит цифры - это латинские символы?

и последнее, думаю, что это учебная задачка.
если это не так, тогда крайне рекомендую воспользоваться Delphi. Там есть TStringList, который решает Вашу задачу буквально в несколько строчек кода!

___________________________________ ____________
Одиночество в Сети, Вы, как всегда на высоте! уважаю!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 26.07.2009, 00:19   #4
Rankin
Новичок
Джуниор
 
Регистрация: 25.07.2009
Сообщений: 2
По умолчанию

Да слова хранятся в каждой строке. По поводу цифр речи не шло поэтому в программе это не учитывается.
Rankin вне форума Ответить с цитированием
Старый 12.01.2010, 17:02   #5
pascal123
Новичок
Джуниор
 
Регистрация: 12.01.2010
Сообщений: 1
По умолчанию

Здесь вы тоже можете почитать про массивы из символов ссылка
pascal123 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[pascal]Сортировка массива методом прямого выбора, работает неадекватно. fatoldsun Помощь студентам 7 22.04.2009 19:42
Сортировка массива методом вставок Pascal bpystep Помощь студентам 5 22.04.2009 01:13
Сортировка записей в файле. Turbo Pascal. Dexterello Помощь студентам 1 28.02.2009 18:14
Pascal - сортировка массива(файла?) kossner Помощь студентам 14 05.12.2008 14:57