Официальный сайт студ.городка НГТУ
Программирование и БД » напомните 

#1  23.05.06 17:17

напомните

Люди ) напомните, что такое тривиальный случай? ))

можно конкретно для:

(проверка баланса скобок)

int skobki(char t)
{
char c=getchar();
while (c!='.')
{
  switch (c)
  {
   case ')': if (t==c)return 1; else return 0;
   case '}': if (t==c)return 1; else return 0;
   case ']': if (t==c)return 1; else return 0;
  }
  switch (c)
  {
   case '(': if (skobki(')')) break; else return 0;
   case '{': if (skobki('}')) break; else return 0;
   case '[': if (skobki(']')) break; else return 0;
  }
  c=getchar();
}
if (t!='_') return 0;
else return 1;
}

void main()
{
clrscr ();
puts ("Vvedi stroku: ");
if (skobki ('_')) puts ("Yes!");
else puts ("No!");
getch();
}

Offline

#2  23.05.06 17:32

Re: напомните

Тривиальный - слово в русском языке. Простой, элементарный, очевидный значит )) А дальше додумай, как это понимать в твоем контексте ))

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

Исправлено MadSlayer (23.05.06 17:34)

Offline

#3  23.05.06 17:38

Re: напомните

MadSlayer,
в смысле, у своих студентов?

так, может, ты все-таки подскажешь с задачей? ))

Offline

#4  23.05.06 17:48

Re: напомните

Sirina-Black написал(а):

в смысле, у своих студентов?

Какой тут может быть смысл? У студентов у которых я преподавал.

Sirina-Black написал(а):

так, может, ты все-таки подскажешь с задачей? ))

Задачу то поконкретней опиши )) Ато в твоем сообщении задачи не видно. Видно вопрос значения слова ))

Offline

#5  23.05.06 17:58

Re: напомните

MadSlayer,
программа проверяет баланс скобок, а если точнее:

Задана строка. Проверить, удовлетворяет ли ее структура следующ. опред.:
<текст>=<элемент>|<элемент><текст>
<элемент>=a|b|..|z|(< текст>)|[<текст>]|{<текст>}

Offline

#6  23.05.06 18:12

Re: напомните

Sirina-Black написал(а):

программа проверяет баланс скобок, а если точнее:

И что в чем вопрос, реализацию программы вроде привела. Корявенко правда, можно ведь и без рекурсии. Чего узнать то хочешь? Учитесь блин выражать мысли яснее )

Offline

#7  23.05.06 18:14

Re: напомните

Sirina-Black написал(а):

Задана строка. Проверить, удовлетворяет ли ее структура следующ. опред.:
<текст>=<элемент>|<элемент><текст>
<элемент>=a|b|..|z|(< текст>)|[<текст>]|{<текст>}

рекурсия рулит

Offline

#8  23.05.06 18:16

Re: напомните

в чем тривиальный случай хочу узнать )) конкретно в этой проге ))

Offline

#9  23.05.06 18:24

Re: напомните

Смотря что ты имеешь ввиду под тривиальным случаем? Тривиально, это всего лишь слово определяющее простоту и элементарность )) Возможно тривиальным для тебя будет одни скобки )

Offline

#10  23.05.06 18:24

Re: напомните

тривиальный
это что то типо ()

Offline

#11  23.05.06 18:28

Re: напомните

блин......лабы сделаны...ну что еще этой преподавательнице надо?...............я ща взвою......

Offline

#12  23.05.06 18:43

Re: напомните

Sirina-Black написал(а):

блин......лабы сделаны...ну что еще этой преподавательнице надо?...............я ща взвою......

кунилингус?

Offline

#13  24.05.06 01:45

Re: напомните

Sirina-Black, не Лауферман, случаем? :)

Offline

#14  26.05.06 11:15

Re: напомните

otaku
оч смешно...

Muxa
она!!!!!!!!

Offline

#15  26.05.06 20:33

Re: напомните

Sirina-Black, как хорошо, что я уже это прошел...
переживи первый курс

Offline

#16  26.05.06 23:32

Re: напомните

Muxa, нам ещё предстоит с ней встретиться!... курсе на 4-ом или 5-ом.
Т.ч. рано радуешься :)

Offline

#17  27.05.06 22:46

Re: напомните

думаю тогда будет уже абсолютно пофиг

Offline

#18  01.06.06 13:47

Re: напомните

да....нам бы сейчас лабы сдать, чтоб к зачету допустили...

а тривиальный случай - случай, когда не требуется применение рекурсии....мда...

Offline

#19  01.06.06 15:31

Re: напомните

Еще раз напишу свой вариант решения (была уже похожая тема):

Код: с:

int isStrBalanced(char * str){
  for(char *c = str; *c != 0; c++){
    if(*c == '(' || *c == '{' || *c == '[') stack.push(*c);
    else if(*c == ')' && stack.pop() != '(') return 0;
    else if(*c == '}' && stack.pop() != '{') return 0;
    else if(*c == ']' && stack.pop() != '[') return 0;
  }
  if(stack.empty()) return 1;
  else return 0;
}

А тривиальные случаи - это: пустая строка, (, ), (), )(, - для каждого типа скобок.

Исправлено __Rush__ (01.06.06 15:35)

Offline

Программирование и БД » напомните 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 1.675 сек.
Выполнено 14 запросов.