Строки в txt

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
matroskin
Сообщения: 38
Зарегистрирован: 17 ноя 2006, 10:53

04 апр 2007, 12:56

Как обратиться к какой либо строке в delphi и паскале в *.txt без цикла? подскажите плз=)
Blood_Magic
Сообщения: 268
Зарегистрирован: 30 июн 2005, 14:53

04 апр 2007, 13:16

никак

либо, если файл не большой, то так

Код: Выделить всё

ls:=TStringList.Create;
ls.LoadFromFile('c:\taxt.txt');
s:=ls.Strings[5];
ls.Free;
- Чем юзер похож на обезьяну?
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
matroskin
Сообщения: 38
Зарегистрирован: 17 ноя 2006, 10:53

05 апр 2007, 13:49

пасиб, но эт да, если небольшой..
Аватара пользователя
Игорь Акопян
Сообщения: 1419
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

06 апр 2007, 14:54

matroskin, цель?
Изложи, может многомудрое сообщество предложит варианты решения...
Изображение
matroskin
Сообщения: 38
Зарегистрирован: 17 ноя 2006, 10:53

09 апр 2007, 12:03

Игорь Акопян писал(а):matroskin, цель?
Изложи, может многомудрое сообщество предложит варианты решения...
=))
ну вобще нужно выьбрать определенную строку из тхт файла, и дальше работать с ней.
я сделал так- сначала считает число строк, потом random(числа строк)


да, кстати вот еще, есть такая игра - слова :) ) когда из слова s1 нужно составить слово s2. Как мне проверить правильность составленного слова, поскажите плхз

Код: Выделить всё

 for i:=1 to Length(s2) do
   begin
     for j:=1 to Length(s1) do
       begin
......
а дальше чет ниче в голову не приходит=))
Аватара пользователя
somewhere
Сообщения: 1837
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

09 апр 2007, 12:21

&quot писал(а):да, кстати вот еще, есть такая игра - слова ) когда из слова s1 нужно составить слово s2. Как мне проверить правильность составленного слова, поскажите плхз
Насколько я понял, слово s2 составляется из букв s1 - тогда надо, во-первых, словарь - чтобы юзверь всякую хрень не писал, ну и во-вторых для слова s1 - список букв, из которых слово состоит и их количество, если надо. Потом такой же список будет и s2 - если списки идентичны, то юзверь играет по правилам.
It's a long way to the top if you wanna rock'n'roll
matroskin
Сообщения: 38
Зарегистрирован: 17 ноя 2006, 10:53

09 апр 2007, 12:51

somewhere писал(а):Насколько я понял, слово s2 составляется из букв s1 - тогда надо, во-первых, словарь - чтобы юзверь всякую хрень не писал, ну и во-вторых для слова s1 - список букв, из которых слово состоит и их количество, если надо. Потом такой же список будет и s2 - если списки идентичны, то юзверь играет по правилам.
да, именно=)
а как реализовать сравнение по буковкам?
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

09 апр 2007, 16:40

Код: Выделить всё

s:=s2
for i:=1 to length(s1) do
if pos(s1[i],s)>0 then delete(s,pos(s1[i],s),1)
else begin writeln('Из s1 нельзя получить s2!'); break;end;
А перед этим предварительно проверить, чтобы длины строк были одинаковыми.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить