| 
| 
 | Вопрос # 2 231/ вопрос открыт / | 
 |  Здравствуйте!подскажите плиз что исправить. нужно составит прогу создания данных типа запись в виде таблицы, с последующей записью их в текстовый файл для создания справочной информации.
 задание:
 в программе предусмотреть создание след. подпрограм-процедур:
 1)формирование 5-7 элементоа массива типа запись с полями, указанными в таблице, споследующей их записью в текстовый файл;
 2)вывод на экран элементов массива записей в соответствии с заданием.
 Сведения про длительность отказов канала связи:
 направление канала связи, дата отказов(по шаблону ДД-ММ-РР), время отказов:начало-конец(по шаблону ч:хв:с).
 Распечатать данные про все отказы, длительность которых более 10 минут.
 К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса) 
|  |   Вопрос задала: Nostalgia (статус: Посетитель)Вопрос отправлен: 24 декабря 2008, 22:17
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 2; последнее сообщение — 24 декабря 2008, 22:33; участников в обсуждении: 1. 
|   | Nostalgia (статус: Посетитель), 24 декабря 2008, 22:20 [#1]:unit Unit1; interface
 type linii_zvyazku=record
 napryamok_kanalu:string[30];
 data_vidmov:string[8];
 chn,minn,sekn,chk,mink,sekk:string;   //chas vidmov
 end;
 var f_linii_zvyazku:file of linii_zvyazku;
 v1:array [1..5] of linii_zvyazku;
 kol:integer;
 procedure sozdat;
 procedure poisk;
 implementation
 procedure sozdat;
 var priznak:char;
 chn,minn,sekn,chk,mink,sekk:byte;
 begin
 kol:=0;
 repeat
 kol:=kol+1;
 writeln ('input napryamok kanalu');
 readln(v1[kol].napryamok_kanalu);
 with v1[kol] do
 begin
 writeln ('input datu vidmov');
 readln (data_vidmov);
 writeln ('input chas vidmov');
 writeln ('chn,minn,sekn,chk,mink,sekk');//vvod nachalnux i konechnux chasov,minut i secund
 readln (chn,minn,sekn,chk,mink,sekk);
 writeln ('prodolzhyt (y/n)');
 readln (priznak);
 end;
 until priznak='n';
 procedure poisk;
 var p:string[8];//pochatok vidmov
 k:string[8];//kinec vidmov
 chn,minn,sekn,chk,mink,sekk,kol_chasov,kol_minut,kol_sekund:byte;
 vsego_minut:real;
 kol_chasov:=(chk-chn)*60;
 kol_minut:=mink-minn;
 kol_secund:=(sekk-sekn)/60;
 vsego_minut:=kol_chasov+kol_minut+kol_secund;
 if (vsego_minut>=10) then
 writeln (v1[i].napryamok_kanalu,' ',v1[i].data_vidmov,' ',v1[i].chn,minn,sekn,chk,mink,sekk);
 end;end;end;
 end.
 program lab23_z21;
 {$APPTYPE CONSOLE}
 uses
 SysUtils,
 Unit1 in 'Unit1.pas';
 
 var f_linii_zvyazku:file of linii_zvyazku;
 chn,minn,sekn,chk,mink,sekk:string;
 begin
 assign (f_linii_zvyazku,'C:\lab23_z21\linii_zvyazku.dat');
 rewrite (f_linii_zvyazku);
 sozdat;
 closefile (f_linii_zvyazku);
 reset(f_linii_zvyazku);
 poisk;
 closefile (f_linii_zvyazku);
 readln;
 readln
 { TODO -oUser -cConsole Main : Insert code here }
 end
 |  
|   | Nostalgia (статус: Посетитель), 24 декабря 2008, 22:33 [#2]:или может так? unit Unit1;
 
 interface
 uses SysUtils;
 type line=record
 napravlenie:string[60];
 data:integer;
 nachalo:string[8];
 konec:string[8];
 end;
 var f_line:file of line;
 b:line;
 U1:array[1..10] of line; kol:integer;
 Priznak:char;
 Procedure sozdat;
 Procedure poisk;
 
 implementation
 
 procedure sozdat;
 var Priznak:char;
 begin
 kol:=0;
 Repeat
 kol:=kol+1;
 writeln('input napravlenie');   readln(U1[kol].napravlenie);
 with U1[kol] do
 begin
 writeln('input data');  readln(data);
 writeln('input  nachalo');  readln(nachalo);
 writeln('input  konec');  readln(konec);
 
 writeln('Prodolgut? (Y/N)');
 readln(Priznak);
 end;
 Until Priznak='N'
 end;
 
 
 procedure poisk;
 var i:integer;
 al:byte;
 s1,s2:string[2];
 s1_i,s2_i:byte;
 err:byte;
 nachalo:string[8];
 konec:string[8];
 begin
 
 s1:=nachalo[4]+nachalo[5];
 s2:=konec[4]+konec[5];
 val(s1,s1_i,err);
 val(s2,s2_i,err);
 al:=s2_i-s1_i;
 for i:=1 to kol do
 begin
 if al>=10 then
 
 writeln(U1[i].napravlenie,'  ',U1[i].data,'  ',U1[i].nachalo,'  ',U1[i]. konec);
 end;end;
 
 
 
 end.
 program Project2;
 
 {$APPTYPE CONSOLE}
 
 uses
 SysUtils,
 Unit1;
 
 var f_line:file of line;
 fio:string;
 
 
 begin
 { TODO -oUser -cConsole Main : Insert code here }
 assign (f_line,'Z:\files\gr.dat');
 rewrite(f_line);
 
 sozdat;
 closefile(f_line);
 
 reset(f_line);
 poisk;
 closefile(f_line);
 readln;
 readln;
 end.
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |