Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2019, 19:39   #1
deinpavel
 
Регистрация: 25.07.2019
Сообщений: 5
Вопрос Сравнение количества скобок в тексте.

Здравствуйте. Такой вопрос. Нужно написать прогу для сравнения количества открывающих и закрывающих скобок в тексте. При этом если их количество равно то должен выдаваться ответ "да", если нет то "нет". В общем прогу я составил, но она даже при равном количестве скобок отвечает "нет". Подскажите плиз в чем ошибка.
Код:
 Var a,b,i,j: integer;
    s: string;
begin
  write('Введите строку');
  readln(s);
  j:=0;
  for i:=1 to length(s) do
  if s[i]='(' then j:=j+1;
  a:=0;
  for b:=1 to length(s) do
  if s[b]=')' then a:=a+1;
 if i>a then writeln('нет');
 if i<a then writeln('нет');
 if i=a then writeln('да');
 end.
_____
Код программы нужно выделять (форматировать) тегами [CODE] [/CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 25.07.2019 в 21:01.
deinpavel вне форума Ответить с цитированием
Старый 25.07.2019, 19:50   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

А чего i>a, а не j>a? Дальше аналогично. Парность скобок не важна?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 25.07.2019, 21:04   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

к абсолютно справедливому замечанию Аватар я ещё добавлю, что нет необходимости отдельно делать цикл для поиска открывающих скобок и отдельный цикл - для закрывающих скобок.
Тем более, что два цикла не решают проблему парности скобок.
Например, вот такая строка нормальная?
)))(((
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.07.2019, 22:24   #4
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,304
По умолчанию

Когда то это уже было.
Например, тут:
https://programmersforum.ru/showthre...EA%EE%E1%EA%E8

PS: Но были предложения и без стека. Это просто, если нужно проконтролировать только один вид скобок.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подсчет количества предложений в выделенном тексте в vba word Stevo Помощь студентам 6 19.04.2019 12:47
Подсчет количества заданной фразы в тексте, не получается сделать infosimple JavaScript, Ajax 6 14.12.2013 13:52
Определение количества слов и предложений в тексте в C# AlexQQ Помощь студентам 1 08.05.2013 17:14
Проверить, имеется ли в заданном тексте баланс открывающих и закрывающих круглых скобок(ассемблер) Александp Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 18.09.2012 15:49
Паскаль. Определение количества слов в тексте. Evgesha Помощь студентам 17 12.04.2011 18:58