powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / проблема с работой типизированными файлами
11 сообщений из 11, страница 1 из 1
проблема с работой типизированными файлами
    #39594400
shot91
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: pascal
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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls;

type
  TForm1 = class(TForm)
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    MainMenu1: TMainMenu;
    V1: TMenuItem;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    Memo1: TMemo;
    N5: TMenuItem;
    N6: TMenuItem;
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N6Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

type
fs=string[10];

var
  Form1: TForm1;
  dir, fName: string;
  f1: fs;

implementation

{$R *.dfm}

function Count1(var f:fs):integer;
 var
 k, i: integer;
 s: string;
begin
    reset(f);
    k:=0;
    while (not eof(f)) do
    begin
    read(f,s); 
       if  s='' then continue; // Çàùèòà îò ïóñòîé ñòðîêè
       if(ord(s[1])>=$30) and (ord(s[1])<=$39) then k:=k+1; //&#237;&#243;&#230;&#237;&#238; &#243;&#241;&#235;&#238;&#226;&#232;&#229; &#234;&#238;&#235;&#232;&#247;&#229;&#241;&#242;&#226;&#238; &#241;&#242;&#240;&#238;&#234; &#244;&#224;&#233;&#235;&#224; fs, &#237;&#224;&#247;&#232;&#237;&#224;&#254;&#249;&#232;&#245;&#241;&#255; &#241; &#246;&#232;&#244;&#240;&#251;
    end;
    closeFile(f);
    count1:=k;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
dir:=ExtractFileDir(paramStr(0))+'\files';
OpenDialog1.InitialDir:=dir;
SaveDialog1.InitialDir:=dir;
end;

procedure TForm1.N1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
fName:=OpenDialog1.FileName;  //&#209;&#238;&#245;&#240;&#224;&#237;&#229;&#237;&#232;&#229; &#239;&#243;&#242;&#232; &#232; &#232;&#236;&#229;&#237;&#232; &#238;&#242;&#234;&#240;&#251;&#226;&#224;&#254;&#249;&#229;&#227;&#238;&#241;&#255; &#244;&#224;&#233;&#235;&#224;
end;

procedure TForm1.N2Click(Sender: TObject);
begin
if Memo1.Lines.Count=0 then
begin
  ShowMessage('&#205;&#229;&#247;&#229;&#227;&#238; &#241;&#238;&#245;&#240;&#224;&#237;&#255;&#242;&#252;');
  exit
end;
if SaveDialog1.Execute then
begin
  Memo1.Lines.SaveToFile(saveDialog1.FileName);
  fName:=saveDialog1.FileName;  //&#209;&#238;&#245;&#240;&#224;&#237;&#229;&#237;&#232;&#229; &#239;&#243;&#242;&#232; &#232; &#232;&#236;&#229;&#237;&#232; &#241;&#238;&#245;&#240;&#224;&#237;&#255;&#229;&#236;&#238;&#227;&#238; &#244;&#224;&#233;&#235;&#224;
end;
end;

procedure TForm1.N6Click(Sender: TObject);
begin
Memo1.Clear;
end;

procedure TForm1.N3Click(Sender: TObject);
begin
if OpenDialog1.Execute then
if MessageDlg('&#194;&#251; &#228;&#229;&#233;&#241;&#242;&#226;&#232;&#242;&#229;&#235;&#252;&#237;&#238; &#245;&#238;&#242;&#232;&#242;&#229; &#243;&#228;&#224;&#235;&#232;&#242;&#252; &#244;&#224;&#233;&#235;'+OpenDialog1.filename+'?',
    mtConfirmation, [mbYes, mbNo], 0) = mrYes then
    DeleteFile(OpenDialog1.filename)
end;

procedure TForm1.N5Click(Sender: TObject);
begin
AssignFile(f1,FName); // &#241;&#226;&#255;&#231;&#251;&#226;&#224;&#229;&#242; &#244;&#224;&#233;&#235;&#238;&#226;&#243;&#254; &#239;&#229;&#240;&#229;&#236;&#229;&#237;&#237;&#243;&#254; &#232; &#244;&#224;&#233;&#235;, &#232;&#236;&#255; &#234;&#238;&#242;&#238;&#240;&#238;&#227;&#238; &#243;&#234;&#224;&#231;&#224;&#237;&#238; &#226; FName
Edit1.Text:=IntTostr(Count1(f1));
end;

end.

...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594422
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что надо сделать? Что не получилось?
Нет смысла вываливать сюда чужой код.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594437
shot91
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гаджимурадов РустамЧто надо сделать? Что не получилось?
Нет смысла вываливать сюда чужой код.

с чего он чужой? у меня проблема что не могу сделать я работу программы с типизированными файлами. данная программа должна открывать файл и подсчитывать сколько строк начинаются на цифру и выводить
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594438
shot91
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Составить, отладить и представить преподавателю для проверки программу на языке Object Pascal , решающую Ваш вариант задания. Программа должна вводить исходные данные, используя компоненты TEdit или TMemo, TStringGrid и т п, или получать их при помощи генератора случайных чисел. Результаты вычислений должны, как правило, выводиться при помощи компонент TLabel, TEdit TMemo, TStringGrid и т п.
Программа должна обязательно использовать тип данных ФАЙЛ ( File ).
Программа должна иметь главное меню, содержащее пункт «Файл» . В этом пункте должны быть субменю: Открыть, Сохранить как, Удалить.
Кроме того, на форме должны быть установлены (невидимые) компоненты: OpenDialog и SaveDialog, облегчающие открытие и сохранение файлов.


type fs = file of string[10]; Функция Count1(var f: fs) :Integer Вашей программы определяет число строк файла типа fs, которые начинаются с цифры.
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594441
shot91
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот рабочая программа но преподу не понравилось что я использовал файлы типа текс
Код: pascal
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.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls;

type
  TForm1 = class(TForm)
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    MainMenu1: TMainMenu;
    V1: TMenuItem;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    Memo1: TMemo;
    N5: TMenuItem;
    N6: TMenuItem;
    Edit1: TEdit;
    procedure FormCreate(Sender: TObject);
    procedure N1Click(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N6Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;


function Count1(var f:TextFile):integer;
var
  Form1: TForm1;
  dir, fName: string;
  f1:TextFile;

implementation

{$R *.dfm}

function Count1(var f:TextFile):integer;
 var
 k, i: integer;
 S: String;

begin
    reset(f);
    k:=0;
     while (not eof(f)) do
      begin
       ReadLn(f,S);

       //&#199;&#224;&#249;&#232;&#242;&#224; &#238;&#242; &#239;&#243;&#241;&#242;&#238;&#233; &#241;&#242;&#240;&#238;&#234;&#232;
       if S = '' then continue;
       if (ord(S[1]) >= $30) and (ord(S[1]) <= $39) then k:=k+1;
       
    end;

    closeFile(f);
    result:=k;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
dir:=ExtractFileDir(paramStr(0))+'\files';
OpenDialog1.InitialDir:=dir;
SaveDialog1.InitialDir:=dir;
end;

procedure TForm1.N1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
fName:=OpenDialog1.FileName;  //&#209;&#238;&#245;&#240;&#224;&#237;&#229;&#237;&#232;&#229; &#239;&#243;&#242;&#232; &#232; &#232;&#236;&#229;&#237;&#232; &#238;&#242;&#234;&#240;&#251;&#226;&#224;&#254;&#249;&#229;&#227;&#238;&#241;&#255; &#244;&#224;&#233;&#235;&#224;
end;

procedure TForm1.N2Click(Sender: TObject);
begin
if Memo1.Lines.Count=0 then
begin
  ShowMessage('&#205;&#229;&#247;&#229;&#227;&#238; &#241;&#238;&#245;&#240;&#224;&#237;&#255;&#242;&#252;');
  exit
end;
if SaveDialog1.Execute then
begin
  Memo1.Lines.SaveToFile(saveDialog1.FileName);
  fName:=saveDialog1.FileName;  //&#209;&#238;&#245;&#240;&#224;&#237;&#229;&#237;&#232;&#229; &#239;&#243;&#242;&#232; &#232; &#232;&#236;&#229;&#237;&#232; &#241;&#238;&#245;&#240;&#224;&#237;&#255;&#229;&#236;&#238;&#227;&#238; &#244;&#224;&#233;&#235;&#224;
end;
end;

procedure TForm1.N6Click(Sender: TObject);
begin
Memo1.Clear;
end;

procedure TForm1.N3Click(Sender: TObject);
begin
if OpenDialog1.Execute then
if MessageDlg('&#194;&#251; &#228;&#229;&#233;&#241;&#242;&#226;&#232;&#242;&#229;&#235;&#252;&#237;&#238; &#245;&#238;&#242;&#232;&#242;&#229; &#243;&#228;&#224;&#235;&#232;&#242;&#252; &#244;&#224;&#233;&#235;'+OpenDialog1.filename+'?',
    mtConfirmation, [mbYes, mbNo], 0) = mrYes then
    DeleteFile(OpenDialog1.filename)
end;

procedure TForm1.N5Click(Sender: TObject);
begin
AssignFile(f1,FName); // &#241;&#226;&#255;&#231;&#251;&#226;&#224;&#229;&#242; &#244;&#224;&#233;&#235;&#238;&#226;&#243;&#254; &#239;&#229;&#240;&#229;&#236;&#229;&#237;&#237;&#243;&#254; &#232; &#244;&#224;&#233;&#235;, &#232;&#236;&#255; &#234;&#238;&#242;&#238;&#240;&#238;&#227;&#238; &#243;&#234;&#224;&#231;&#224;&#237;&#238; &#226; FName
Edit1.Text:=IntTostr(Count1(f1));
end;

end.
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594449
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shot91с чего он чужой?

С того, что в своём (уме) никто не объявил бы fs:string[10].
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594458
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shot91> преподу не понравилось что я использовал файлы типа текс
shot91> f1:TextFile;

Ну так с типизированными файлами надо иначе работать.
Например, как с потоком (TFileStream). Хотя непонятно,
зачем, если считывать всё равно надо строки.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594462
shot91
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гаджимурадов Рустамshot91> преподу не понравилось что я использовал файлы типа текс
shot91> f1:TextFile;

Ну так с типизированными файлами надо иначе работать.
Например, как с потоком (TFileStream). Хотя непонятно,
зачем, если считывать всё равно надо строки.


Подскажи тогда пожалуйста, что и как я типизированные файлы даже не помню учил их в гараже или так поверхностно коснулись их
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594466
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
shot91Гаджимурадов Рустамshot91> преподу не понравилось что я использовал файлы типа текс
shot91> f1:TextFile;

Ну так с типизированными файлами надо иначе работать.
Например, как с потоком (TFileStream). Хотя непонятно,
зачем, если считывать всё равно надо строки.


Подскажи тогда пожалуйста, что и как я типизированные файлы даже не помню учил их в гараже или так поверхностно коснулись их
Подсказыываю:
http://mif.vspu.ru/books/pascal/
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594467
shot91
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
defecatorshot91пропущено...


Подскажи тогда пожалуйста, что и как я типизированные файлы даже не помню учил их в гараже или так поверхностно коснулись их
Подсказыываю:
http://mif.vspu.ru/books/pascal/


Ну да умник просто. Мне заново Паскаль учить? Я и так читал про файлы но не понимаю их. Иначе если бы понял не писал бы сюда. Походу сами мало что знаете
...
Рейтинг: 0 / 0
проблема с работой типизированными файлами
    #39594470
shot91
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Могли бы показать наглядно как пишется и объяснить мне. Бывает такое что человек не может понять пока это не увидит. Я же не кидаю чисто условие и не прошу решить за меня все. Программа сама написана... Но вот условия по задаче не соблюдены
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / проблема с работой типизированными файлами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]