n412ot

функция Pos

24.02.2010, 21:56. Показов 2241. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Пишу программку, прога берет из текстового файла строку, строка состоит из слов разделенных "," без пробелов, представленный ниже код почти выполняет мою задачу, но мне надо что бы в новой строке было не по одному слову, а по "н" количеству слов, так вот как мне указать сколько "," пропускать чтобы перенестись на следующую строку?

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
procedure TForm2.Button2Click(Sender: TObject);
begin
   f:=TStringList.Create();
   f.LoadFromFile('c:\base.txt');  
   P:=f.Strings[0]; 
   repeat
      word:=Copy(P,1, Pos(',', P)-1); 
      Delete (P,1, Length(word)+1);
      ListBox1.Items.Add(word);
 
   until Length(P)=0;
end;
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.02.2010, 21:56
Ответы с готовыми решениями:

Функция Pos
Может кто то поможет решить задание через функцию Pos: Вводится строка. Какое в ней расстояние между первым и последним пробелом (если...

Функция Pos
Где можно достать функцию pos, которая работает начиная с некоторого места?

Функция Pos
Добрый день. Я не совсем не разобрался с функцией Pos, можете подсказать как искать 2, 3 символ после предыдущего. Пример: у меня есть...

2
 Аватар для pro_512
9 / 9 / 1
Регистрация: 15.12.2009
Сообщений: 85
25.02.2010, 18:06
Не совсем понял задачу а точнее проблему, розтолкуй пожалуйста.
0
 Аватар для Mawrat
13113 / 5894 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
26.02.2010, 14:10
Как я понял, каждая строка ListBox-а должна содержать не более N слов. Если слов больше - их записывать в следующую строку ListBox-а.
Для этого код можно изменить так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
procedure TForm1.Button1Click(Sender: TObject);
const
  //Количество слов, помещаемых в одну строку Лист бокса.
  N = 10;
var
  StrTmp, StrWord : String;
  Count : Integer;
begin
  f:=TStringList.Create();
  f.LoadFromFile('c:\base.txt');
  P:=f.Strings[0];
 
  Count := 0;
  StrTmp := '';
  repeat
    StrWord := Copy(P,1, Pos(',', P)-1);
    Delete (P,1, Length(StrWord)+1);
 
    if StrTmp <> '' then StrTmp := StrTmp + ', ';
    StrTmp := StrTmp + StrWord;
 
    Inc(Count);
    if Count mod N = 0 do begin
      ListBox1.Items.Add(StrTmp);
      StrTmp := '';
    end;
  until Length(P)=0;
 
  //Дописываем оставшиеся слова.
  if StrTmp <> '' then ListBox1.Items.Add(StrTmp);
end;
Здесь я переменную Word заменил на StrWord, чтобы не происходило перекрытие целочисленного типа Word.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.02.2010, 14:10
Помогаю со студенческими работами здесь

Функция Pos
Вот у меня есть программа для расчёта , но когда я ввожу число с точкой , то программа выдаёт ошибку , если с зарятой то норм всё, помогите...

Функция Pos
ребят, помогите исправить некоторые строки в проге через функцию Pos в архиве, прикрепленном к письму, исходники программы. Заранее...

Функция pos, del
Необходимо из - {&quot;response&quot;:} он в Memo1 получить 55444617 31284630 51599532 38880609 51484905 41843982

в delphi7 не работает функция pos
оригинальный диск с delphi7. функция pos всегда возвращает 0 пример: var i: integer; str: string; begin str := 'abcdef'; ...

Не работает системная функция Pos
Доброго дня! Помогите с идиотской ситуацией: В одной из моих функций не работает вызов системной функции Pos(). Т.е. проект даже не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
sshd restrictions, ssh access limitations
jigi33 26.03.2025
sshd restrictions | ssh access limitations рестрикции доступа на сервер sshd статья: https:/ / www. golinuxcloud. com/ restrict-allow-ssh-certain-users-groups-rhel
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточное программировани­е в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
Моки в Java: Сравниваем Mockito, EasyMock, JMockit
Javaican 23.03.2025
Как протестировать класс, который зависит от других сложных компонентов, таких как базы данных, веб-сервисы или другие классы, с которыми и так непросто работать в тестовом окружении? Для этого и. . .
Архитектурные паттерны микросервисов: ТОП-10 шаблонов
ArchitectMsa 22.03.2025
Популярность микросервисной архитектуры объясняется множеством важных преимуществ. К примеру, она позволяет командам разработчиков работать независимо друг от друга, используя различные технологии и. . .
Оптимизация рендеринга в Unity: Сортировка миллиона спрайтов
GameUnited 22.03.2025
Помните, когда наличие сотни спрайтов в игре приводило к существенному падению производительности? Время таких ограничений уходит в прошлое. Сегодня геймдев сталкивается с задачами совершенно иного. . .
Образование и практика
Igor3D 21.03.2025
Добрый день А вот каково качество/ эффективность ВУЗовского образования? Аналитическая геометрия изучается в первом семестре и считается довольно легким курсом, что вполне справедливо. Ну хорошо,. . .
Lazarus. Таблица с объединением ячеек.
Massaraksh7 21.03.2025
Понадобилась представление на экране таблицы с объединёнными ячейками. И не одной, а штук триста, и все разные. На Delphi я использовал для этих целей TStringGrid, и то, кривовато получалось. А в. . .
Async/await в Swift: Асинхронное программировани­е в iOS
mobDevWorks 20.03.2025
Асинхронное программирование долго было одной из самых сложных задач для разработчиков iOS. В течение многих лет мы сражались с замыканиями, диспетчеризацией очередей и обратными вызовами, чтобы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru