IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> баланс скобок, помогите пожалуйста решить задачу
-Лина-
сообщение 26.11.2007 0:07
Сообщение #1


Гость






пожалуйста,помогите решить задачу!
абсолютно не понимаю,с чего начать и что делать.

задача(процедуры и функции):
составить подпрограмму определения баланса открывающих и закрывающих скобок в выражении. используя ее, составиь программа контроля правильности записи вводимых выражений.

заранее спасибо!
 К началу страницы 
+ Ответить 
Sozialist
сообщение 26.11.2007 3:36
Сообщение #2


Клавиатурный тиран
**

Группа: Пользователи
Сообщений: 79
Пол: Мужской
Реальное имя: Дмитрий

Репутация: -  -2  +


Самый простой вариант без проверок. Естественно, нужно дорабатывать все виды скобок. Можно также удалять последовательность '()'. + Масса проверок, например, в начале не может идти ')', а в конце - '(' и т.д. Желательно полное условие задачи.
program balance;
var
n,m,i:integer;
st:string;

//----------------------------------------Функция---------------------------------------------
Function Bal(str:string):boolean;
begin
m:=0; n:=0;
for i:=1 to length(str) do
begin
if st[i] in [')','('] then
if st[i]=')' then inc(m)
else inc(n);
end;
if m=n then Bal:=true
else Bal:=false;
end;
//-----------------------------------------------------------------------------------------------

BEGIN
readln(st);
if Bal(st) then write('Balance exists!')
else writeln('No balance!');
readln;
END.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Гость
сообщение 26.11.2007 9:12
Сообщение #3


Гость






это полное условие задачи((
 К началу страницы 
+ Ответить 
volvo
сообщение 26.11.2007 9:38
Сообщение #4


Гость






-Лина-
Ну поиск для кого? Сколько ж можно одни и те же вопросы задавать-то? Соревнование даже проводили по этой теме: Задача на проверку баланса скобок в строке

Выбирай любую и дорабатывай...
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 19.07.2025 19:10
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"