Advertisement
nblknn

laba 1 4

Sep 15th, 2023
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.75 KB | None | 0 0
  1. Program lab14;
  2.  
  3. Uses
  4.     System.SysUtils;
  5.  
  6. Var
  7.     Num, I: Integer;
  8.     Arr: Array [1 .. 10] Of Integer;
  9.     ArrSgl: Array [1 .. 10] Of Real;
  10.     IsCorrect: Boolean;
  11.  
  12. Begin
  13.     Writeln('Данная программа формирует "сглаженный" массив из введенного.');
  14.  
  15.     Repeat
  16.         IsCorrect := True;
  17.  
  18.         Try
  19.             Writeln('Введите количество элементов массива от 3 до 10.');
  20.             Readln(Num);
  21.         Except
  22.             Writeln('Введенные данные не соответствуют условию. Повторите попытку.');
  23.             IsCorrect := False;
  24.         End;
  25.  
  26.         If IsCorrect And ((Num<3) or (Num>10)) Then
  27.         Begin
  28.             Writeln('Введенные данные не соответствуют условию. Повторите попытку.');
  29.             IsCorrect := False;
  30.         End;
  31.  
  32.     Until (IsCorrect);
  33.  
  34.     Writeln('Введите элементы массива.');
  35.  
  36.     For I := 1 To Num Do
  37.     Repeat
  38.         IsCorrect := True;
  39.  
  40.         Try
  41.             Write('Введите ', I, ' элемент массива: ');
  42.             Readln(Arr[I]);
  43.         Except
  44.             Writeln('Введенные данные не соответствуют условию. Повторите попытку.');
  45.             IsCorrect := False;
  46.         End;
  47.  
  48.     Until (IsCorrect);
  49.  
  50.     ArrSgl[1] := Arr[1];
  51.     ArrSgl[Num] := Arr[Num];
  52.  
  53.     For I := 2 To (Num - 1) Do
  54.         ArrSgl[I] := (Arr[I - 1] + Arr[I] + Arr[I + 1]) / 3;
  55.  
  56.     Write('Вывод сглаженного массива: ');
  57.  
  58.     For I := 1 To Num Do
  59.         Write(ArrSgl[I]:5:1, ' ');
  60.  
  61.     Readln;
  62.  
  63. End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement