Advertisement
Fenrir112

%u041C%u043D%u043E%u0436%u0435%u0441%u0442%u0432%u0430 2

Dec 15th, 2013
61
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 [0..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.   Ai[0] := 32768;
  19.   for j := 1 to c do
  20.   begin
  21.     write ('Введите ',j,' число: ');
  22.     readln (Ai[j]);
  23.   end;
  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 (elem1 > elem2) then
  46.     return := elem2
  47.   else
  48.     return := 0;
  49.   f := return;
  50. end;
  51.  
  52. {функция создания нового массива}
  53. function newMas (oldMas : Tmas; c : integer; var index : integer) : Tmas;
  54. var
  55.   j : integer;
  56.   nMas : Tmas;
  57. begin
  58.   for j := 1 to c do
  59.   begin
  60.     nMas[j] := f(oldMas[j-1], oldMas[j], index);
  61.   end;
  62.   newMas := nMas;
  63. end;
  64.  
  65. begin
  66.   // пример для теста для этого заменить A на Atest и закомментировать Input
  67.   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;
  68.   write('Введите число членов последовательности: ');
  69.   readln (count);
  70.   Input (A, count);
  71.   write('Исходная ');
  72.   Output (A, count);
  73.   index1 := 1;
  74.   B := newMas(A, count, index1);
  75.   write ('Итоговая ');
  76.   Output (B, count);
  77. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement