В текстовом файле F1 задана последовательность символов, в F2 - другая последовательность. Разработать пpоцедуpы
Категория: Delphi/Pascal
2012-01-15 21:55:09
- P1 - фopмиpования линейного списка S из символов стpоки текстового файла G;
- P2 - фоpмиpования множества M из символов стpоки заданного текстового файла G;
- P3 - исключения из заданного множества M букв латинского алфавита, входящих в заданный список S;
- P4 - вывода линейного списка символов S в текстовый файл H.
code: #pascal
Program PascalGuru; uses crt; type tabl=array[1..256] of char; M=set of char; Var f1,f2:text; I,n,j,k: integer; S1,s2:string; s,s3:tabl; M1,m2:M; procedure zap_perv(Var f1:text); begin {formiruem 1 file} Assign(f1,'G.txt'); {svyaz failovoj perem} Rewrite(f1); writeln('Vvedite simvoli v 1 file Enter-konec vvoda'); readln(s1); writeln(f1,s1); close(f1); end; procedure viv_perv(Var f1:text); begin Assign(f1,'G.txt'); Reset(f1); While not eof(f1) do Begin Readln(f1,s1); Writeln(s1); End; close(f1); end; procedure p1(var f1:text; var s:tabl;var n:integer); Begin n:=length(s1); for i:=1 to n do begin s[i]:=s1[i]; Write(s[i]:2); end; End; procedure p2(var f1:text; var s:tabl; var M1:M); Begin n:=length(s1);M1:=[]; for i:=1 to n do begin include (M1, s[i]); Write(s[i]:2); end; End; procedure p3(var f1:text; var s,s3:tabl; var M1:M; var k:integer); Begin k:=0; for i:=1 to n do Begin if (((ord(s[i])>65) and (ord(s[i])<90)) or ((ord(s[i])>97) and (ord(s[i])<122))) then begin exclude (M1, s[i]); j:=i+1; end else begin k:=k+1; s3[k]:=s[i]; end; end; end; procedure p4(Var f2:text; var k:integer); begin {formir 2 file} Assign(f2,'H.txt'); {svyaz failovoj perem} Rewrite(f2); for i:=1 to k do begin write(f2,s3[i]); include (M2, s3[i]); write(s3[i]:2); end; close(f2); end; Begin clrscr; zap_perv(f1); writeln('Vivod 1 file'); viv_perv(f1); writeln('Vivod ryada'); p1(f1,s,n); writeln; writeln('Vivod mnogestva'); p2(f1,s,M1); writeln; p3(f1,s,s3,M1,k); writeln('Ubrali latinicu'); p4(f2,k); writeln; writeln('Esli is mnoszestva elementov F2 vichest mnoszestvo elementov F1, to budet PUSTO! '); readkey; End.
Поделиться: