Advertisement
nblknn

Laboooo 2.1 0:B

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