Проверка на правильность расстановки скобок - C#
Формулировка задачи:
Дан текст. Проверить, правильно ли в нем расставлены круглые скобки (т. е. находится ли справа от каждой открывающей скобки соответствующая ей закрывающая скобка, а слева от каждой закрывающей — соответствующая ей закрывающая). Предполагается, что внутри каждой пары скобок нет других скобок.
а) Ответом должны служить слова да или нет.
б) В случае неправильности расстановки скобок:
если имеются лишние правые (закрывающие) скобки, то выдать сооб-щение с указанием позиции первой такой скобки;
если имеются лишние левые (открывающие) скобки, то выдать сообще-ние с указанием количества таких скобок.
Если скобки расставлены правильно, то сообщить об этом.
первая рабочая часть есть
Листинг программы
- uses crt;
- var
- s:string;
- i,m,n:integer;
- begin
- clrscr;
- writeln('введите текст');
- readln(s);
- for i:=1 to length(s) do
- m:=0;
- n:=0;
- if s[i]='(' then
- m:=m+1;
- if s[i]=')' then
- n:=n+1;
- if m=n then
- writeln ('скобки расставлены неправильно') else
- writeln ('скобки расставлены правильно');
- readln;
- end.
Решение задачи: «Проверка на правильность расстановки скобок»
textual
Листинг программы
- using System;
- class Program
- {
- static void Main()
- {
- string s;
- while ((s = Console.ReadLine()) != null)
- {
- int brackets = 0;
- int i;
- for (i = 0; i < s.Length; i++)
- {
- if (s[i] == '(')
- {
- brackets++;
- }
- else if (s[i] == ')' && --brackets < 0)
- {
- break;
- }
- }
- Console.WriteLine(brackets);
- Console.WriteLine(i);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д