• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте, чтобы узнать больше. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Как добавить файл словаря?

Neketozzz

Ученик
Регистрация
8 Апр 2012
Сообщения
5
Реакции
0
Баллы
0
Как добавить файл словаря?

Дело в следующем: нужна программа (на Pascal), которая ищет в файле (словарь) слова перевертыши (кок, шалаш). Как прикрутить к ней этот файл?
 
Код:
var f: text;
begin
assign(f,'путь к файлу');
{
работа с файлом
}
close(f);
end.
 
Примерно так?

VAR
S,S1,S2:String;
i,i1,i2,N,j:Byte;
f:text;
BEGIN
assign(f,'путь к файлу');
{
ReadLn(S);
WriteLn;
N:=0;
i:=0;
Repeat
Repeat
Inc(i);
Until S<>' ';
i1:=i;
Repeat
Inc(i);
Until (S=' ') or (i=Length(S));
If S=' ' then i2:=i else i2:=i+1;
S1:=Copy(S,i1,(i2-i1));
S2:=S1;
For j:=1 to Length(S1) do
S2[Length(S1)-j+1]:=S1[j];
If S1=S2 then
begin
Write(S1+' ');
Inc(N);
end;
Until i=Length(S);
WriteLn;
WriteLn(N,' words');
ReadLn;
}
close(f);
END.
 
Совсем не так!
Вместо 'путь к файлу' необходимо прописать реальный путь, заканчивающийся именем файла на диске - существующего или того, который предполагается создать, причем применение кириллицы не допускается (то есть может быть и существуют реализации Паскаля, умеющие работать с кириллицей в адресе, но мне они не известны). Например, Вы хотите открыть для чтения существующий на диске D в папке Darling файл swine.txt, то нужно записать:
Assign(f, 'D:\Darling\swine.txt');
После этого установится связь между указанным файлом на диске и файловой переменной f, объявленной в разделе Var программы.
Далее следует указать, что Вы собираетесь с этим файлом делать:
1. Читать - тогда пишем Reset(f);
2. Записывать в файл информацию - в этом случае пишем Rewrite(f); Если файла с таким именем на диске нет, он будет создан. ВНИМАНИЕ!!! Если применить команду Rewrite к имеющемуся на диске файлу, то вся содержащаяся в файле информация будет стерта!!!
3. Записать что-либо в конец файла (только для текстовых файлов) - команда Append(f);
4. Уничтожить файл - команда Erase(f);
 
Вместо 'путь к файлу' необходимо прописать реальный путь
Мда( что-то я не подумал о такой интерпретации моего сообщения(:tehnari_ru_325:
то есть может быть и существуют реализации Паскаля
Вроде freepascal умеет, если я не ошибаюсь...
 
Вроде freepascal умеет, если я не ошибаюсь...
Может и умеет - не пробовал. Тем более, что пользую DOS-версию FP, а там и вовсе кодировка другая. Так что лучше не надо. Оно спокойнее.
 
Так что лучше не надо. Оно спокойнее.
:tehnari_ru_150:
Чего не сделаешь для душевного равновесия))

Кст. Я не правильно понял задание. Я думал уже дан словарь и нужно к примеру в массив ввести эти слова перевертыши или просто вывести на экран. Но все равно...
Зачем так жестоко?)))
4. Уничтожить файл - команда Erase(f);
 
Ну чисто теоретически - словарь есть (надо слов накидать в текстовый файл) и нужно вывести имеющиеся в нем слова перевертыши. Большое всем спасибо за помощь!
 
Назад
Сверху