Урок 15 Задача 3

Урок 15 Задача 3:

У вас есть массив:

type
  myArr = array[1..8] of integer; 
var
  a: myArr;

-- целочисленный из 8 элементов.

Пользователь вводит любые целые числа (после каждого нажимает Enter), до тех пор пока не введет символ решетки #

Задача: сохранить в массив целые числа, которые ввел пользователь (до символа # или до окончания места в массиве) и вывести их на экран, значения неиспользованных ячеек массива выводить ненужно.

type
  myArr = array[1..8] of integer;
var
  a: myArr;
  x, i, j, code: integer;
  s: string;
begin
  while (j<high(a)) do       // цикл действует, пока счетчик меньше номера конечного эл-та массива
  begin
    write('Введите число: ');
    readln (s);
    if s = '#' then          // проверка, если введена решетка
      break                  // выходим из цикла
    else begin
      val(s, x, code);       // преобразовываем строку в число
      if code = 0 then       // проверка кода ошибки, чтобы далее в массив не присваивались нули, если пользователь введет не integer
      begin
        j:=j+1;
        a[j] :=x;
      end;
    end;
  end;
  for i:=low(a) to j do      // обходим массив до j
    write(a[i], '  ');       // выводим элементы на экран
  readln ();
end. 

Вывод в консоли:

Введите число: 54
Введите число: 4
Введите число: 2
Введите число: 6
Введите число: #
54  4  2  6 
Введите число: 5
Введите число: 3
Введите число: 6
Введите число: 22
Введите число: 6
Введите число: 4
Введите число: 6
Введите число: 3
5  3  6  22  6  4  6  3