Программа не доходит до процедуры ClrAll при правильном вводе данных. В чём может быть ошибка? - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Программа не доходит до процедуры ClrAll при правильном вводе данных. В чём может быть ошибка?

Решение задачи: «Программа не доходит до процедуры ClrAll при правильном вводе данных. В чём может быть ошибка?»

textual
Листинг программы
Uses crt;
 
procedure ClrAll(A: Array of String); begin
  SetLength(A, 0);
  ClrScr;
end;
 
begin
Var A: array of string; 
//В PABC.NET есть возможность делать локальные переменные, у вас все обрабатывается внутри main-метода, смысла Command в глобальных переменных нет
 
  while true do begin
    var Command := ReadlnString('>>'); //Эта функция тоже должна вам быть известна
    if not (Command[1] = '/') then begin
      Writeln('Excepted slash, but ' + Command[1] + ' met'); 
      continue; //Про это читайте в справке, переходит на новую итерацию цикла
    end;
    Command := Command[2:]; //Зачем ваш цикл, если есть, например Copy. Срез вообще хорошо подойдет (про него читайте в справке)
    case Command of //Если у Вас много команд, то лучше так.
      'clrall': ClrAll(A);
      else Writeln('Unknown command: ' + Command);
    end;
  end;
end.

Объяснение кода листинга программы

  1. Описание процедуры ClrAll, которая принимает массив строк и очищает его, устанавливая его длину в 0.
  2. Объявление глобальной переменной A типа массив строк.
  3. Бесконечный цикл, который продолжается до тех пор, пока пользователь не введет команду '/'.
  4. Если введенная команда не начинается со знака '/', выводится сообщение об ошибке.
  5. Введенная команда обрезается, чтобы убрать знак '/'.
  6. В зависимости от введенной команды выполняется соответствующая операция:
    • Если команда 'clrall', вызывается процедура ClrAll с аргументом A.
    • Если команда не распознана, выводится сообщение об ошибке.
  7. Код не содержит обработки ошибок, кроме проверки на знак '/' в начале команды.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы