Advertisement
Asirin85

NewCotrol

Dec 18th, 2017
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.02 KB | None | 0 0
  1. uses crt;
  2. const
  3.  n = 3;
  4. type mtr=array[1..10,1..10] of integer;
  5. far = file of mtr;
  6.  
  7. procedure Create(var f:far);
  8. var
  9. fn1:string;
  10. begin
  11. readln(fn1);
  12. while FileExists(fn1) do begin
  13.  writeln('Такой файл уже существует');
  14.  writeln('Введите название исходного файла повторно: ');
  15.  readln(fn1);
  16.  end;
  17.  assign(f,fn1);
  18.  rewrite(f);close(f);
  19.  writeln('Файл создан');
  20. end;
  21.  
  22. procedure AskingQuestions(var f:far);
  23. var
  24. fn1:string;
  25. begin
  26. readln(fn1);
  27. while FileExists(fn1) do begin
  28.  writeln('Такой файл уже существует');
  29.  writeln('Введите название исходного файла повторно: ');
  30.  readln(fn1);
  31.  end;
  32.  assign(f,fn1);
  33. end;
  34.  
  35. procedure InputRec(var f:far);
  36. var a:mtr;
  37. i,j,k:integer;
  38. begin
  39. reset(f);
  40. for i:=1 to 3 do
  41.  begin
  42.  
  43.   for k:=1 to n do
  44.   for j:=1 to n do
  45.   a[k,j]:=2+random(21);
  46.   write(f,a);
  47.  end;
  48.  end;
  49.  
  50.  
  51. procedure ViewFileRec(var f: far);
  52. var a:mtr;
  53. i,j:integer;
  54. begin
  55.  reset(f);
  56.  while not eof(f) do begin
  57.   read(f,a);
  58.   for i:=1 to n do
  59.    begin
  60.     writeln;
  61.     for j:=1 to n do
  62.      begin
  63.       write(a[i,j]:5);
  64.      end;
  65.    end;
  66.   writeln;  
  67.  end;
  68. close(f);
  69. writeln;
  70. end;
  71.  
  72. function Test(var a:mtr):boolean;
  73. var
  74. sum:integer;
  75. i,j:integer;
  76. begin
  77. sum:=0;
  78. for i:= 1 to n do
  79.  for j:= 1 to n do
  80.   sum:=sum+a[i,n+1-i];
  81. Test:= ((sum)mod 4 = 0);
  82. end;
  83.  
  84. procedure Alg(var f:far; var g: far);
  85. var matr:mtr;
  86. i,j:integer;
  87. begin
  88. rewrite(g);
  89. reset(f);
  90. while not eof(f) do begin
  91. read(f,matr);
  92. if (Test(matr)) then
  93.  write(g,matr);
  94. end;
  95. close(f);
  96. close(g);
  97. end;
  98.  
  99. var f1,f2:far;  
  100. fn1,fn2:string;
  101. begin
  102.  writeln('Введите имя исходного файла');
  103.  Create(f1);
  104.  writeln('Введите имя результирующего файла');
  105.  AskingQuestions(f2);
  106.  InputRec(f1);
  107.  Alg(f1,f2);
  108.  writeln('Исходный файл: ');
  109.  ViewFileRec(f1);
  110.  writeln('Результирующий файл: ');
  111.  ViewFileRec(f2);
  112. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement