Файл: Проверить корректность расстановки скобок в арифметическом выражении - Pascal ABC

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

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

Помогите написать задачу!!! Проверить корректность расстановки скобок в арифметическом выражении. Выражение задается из файла "input.txt" и может содержать произвольное количество круглых скобок. Программа должна выдать одну строчку: "правильно" или "неправильно". Заранее спасибо!!!

Решение задачи: «Файл: Проверить корректность расстановки скобок в арифметическом выражении»

textual
Листинг программы
function balance(s: string): boolean;{Cyborg Drone ©}
var i, n: integer;
begin
  n := 0;
  for i := 1 to length(s) do
    begin
      if s[i] = '('
        then inc(n)
        else if s[i] = ')'
          then dec(n);
      if n < 0 then break
    end;
  balance := n = 0 
end;
var s: string;f:text;
begin
  assign(f,'input.txt');
  reset(f);
  readln(f,s);
  writeln(s);
  writeln('Balance: ', balance(s));
  close(f);
end.

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

  1. Создается функция balance, которая принимает строку s в качестве аргумента и возвращает логическое значение true, если скобки в арифметическом выражении расставлены корректно, и false в противном случае.
  2. В функции объявляются две переменные: i и n. Переменная i инициализируется значением 1, а переменная n - значением 0.
  3. Затем происходит цикл for, который выполняется от 1 до длины строки s.
  4. Внутри цикла проверяется каждый символ в строке s.
  5. Если символ равен '(', то значение переменной n увеличивается на 1.
  6. Если символ равен ')', то значение переменной n уменьшается на 1.
  7. Если значение переменной n меньше 0, то цикл прерывается.
  8. По окончании цикла, функция balance возвращает логическое значение true, если все скобки расставлены корректно, и false в противном случае.
  9. Создается переменная s типа string и присваивается значение 'input.txt'.
  10. Открывается файл с именем 'input.txt' для чтения.
  11. Считывается строка из файла в переменную s.
  12. Выводится строка s.
  13. Выводится сообщение 'Balance: ', и вызывается функция balance, передавая ей строку s в качестве аргумента.
  14. Закрывается файл с именем 'input.txt'.

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


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

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

10   голосов , оценка 4 из 5