Fenrir112

%u0412%u0435%u0440%u0441%u0438%u044F 3

Dec 11th, 2013
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.78 KB | None | 0 0
  1. program Tufta1bVer01;
  2.  
  3. const
  4.   N = 50;
  5.  
  6. type
  7.   Tmas = array [1..N] of integer;
  8.  
  9. var
  10.   A, Atest, B : Tmas; // массив с последовательностью и второй массив с результатом
  11.   count, index1 : integer;
  12.  
  13. {процедура ввода}  
  14. procedure Input (var Ai : Tmas ; c : integer);
  15. var
  16.   j : integer;
  17. begin
  18.   for j := 1 to c do
  19.   begin
  20.     write ('Введите ',j,' число: ');
  21.     readln (Ai[j]);
  22.   end;
  23.   Ai[c+1] := -32768;
  24. end;
  25.  
  26. {процедура вывода}
  27. procedure Output (Ai : Tmas; c : integer);
  28. var
  29.   j : integer;
  30. begin
  31.   writeln('Последовательность:');
  32.   for j := 1 to c do
  33.   begin
  34.     write (Ai[j],' ');
  35.   end;
  36.   writeln;
  37.   writeln;
  38. end;
  39.  
  40. {функция проверки условия}
  41. function f(elem1, elem2 : integer; var index : integer) : integer;
  42. var
  43.   return : integer;
  44. begin
  45.   if (index = 1) and (elem1 < elem2) then
  46.   begin
  47.     Inc (index);
  48.     return := elem1;
  49.   end else
  50.   begin
  51.     index := 1;
  52.     return := 0;
  53.   end;
  54.   f := return;
  55. end;
  56.  
  57. {процедура создания нового массива}
  58. procedure Mas2 (oldMas : Tmas; var newMas : Tmas; c : integer; var index : integer);
  59. var
  60.   j : integer;
  61. begin
  62.   for j := 1 to c do
  63.   begin
  64.     newMas[j] := f(oldMas[j], oldMas[j+1], index);
  65.   end;
  66. end;
  67.  
  68. begin
  69.   // пример для теста для этого заменить A на Atest и закомментировать Input
  70.   Atest[1] := 3; Atest[2] := 4; Atest[3] := 5; Atest[4] := 2; Atest[5] := 2; Atest[6] := 3; Atest[7] := 1; Atest[8] := 5; Atest[9] := 7; Atest[10] := 3;
  71.   write('Введите число членов последовательности: ');
  72.   readln (count);
  73.   Input (A, count);
  74.   Output (A, count);
  75.   index1 := 1;
  76.   Mas2 (A, B, count, index1);
  77.   Output (B, count);
  78. end.
Advertisement
Add Comment
Please, Sign In to add comment