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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2010, 22:38   #1
Nikitos1992
 
Регистрация: 21.12.2010
Сообщений: 4
По умолчанию Решение задачи с рекурсией

Вот собственно мое задание:Построить все правильные скобочные выражения длинны 10,тоесть такие ,которые имеют по пять правых и по пять левых круглых скобок!

я даже не знаю с чего начинать,преподователи сказали что обязательно выполнять через рекурсию,но я даже алгоритма не могу придумать!помогите кто разбирается в этом!так быстро сделать сказали!
Nikitos1992 вне форума Ответить с цитированием
Старый 22.12.2010, 09:45   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а почему Вы думаете, что Вы первый кто решает эту "сложную" задачу?

поиском пробовали воспользоваться?!

Вывести все правильные скобочные выражения размера 2N.

Последний раз редактировалось Serge_Bliznykov; 22.12.2010 в 09:56.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 22.12.2010, 22:23   #3
Nikitos1992
 
Регистрация: 21.12.2010
Сообщений: 4
По умолчанию

я просто новичок и Паскалем вообще не владею,мне на С код нужен(
Nikitos1992 вне форума Ответить с цитированием
Старый 23.12.2010, 09:51   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

так перепишите на С ...
код программы простейший же!

если не будет получаться - опубликуйте тот код, что смогли переписать,
думаю, что тут, на форуме есть люди, знающие и Pascal и C - они подправят Ваш код...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.12.2010, 01:45   #5
Nikitos1992
 
Регистрация: 21.12.2010
Сообщений: 4
По умолчанию

Код:
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include<conio.h>

int N=4;

void ShowVariant(string s, int a, int b)
{
if(a==0&&b==0)
printf("%s",s);

if(a>0&&b>=a)
ShowVariant(strcat(s,"("),a--,b);

if(b>0)
ShowVariant(strcat(s,")"),a,b--);
}

main()
{
ShowVariant("",N,N);
getch();
}
вот я вроде переделал,верно или есть ошибки проверьте пожалуйста!)



________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 25.12.2010 в 09:57.
Nikitos1992 вне форума Ответить с цитированием
Старый 25.12.2010, 09:59   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
вот я вроде переделал,верно или есть ошибки проверьте пожалуйста!)
Молодец!
на мой неискушённый в языке C взгляд - всё нормально.

Код то работает? Скобочки выводит?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.12.2010, 13:56   #7
andrewpalkin
Форумчанин
 
Аватар для andrewpalkin
 
Регистрация: 23.11.2010
Сообщений: 458
По умолчанию

Цитата:
Сообщение от Nikitos1992 Посмотреть сообщение

вот я вроде переделал,верно или есть ошибки проверьте пожалуйста!)
А ты не пробовал ее запустить и проверить ?
--- Если я вам помог , то помогите и вы мне . Не просто просите решить задачу , а пробуйте ее сами решить ! Я не пишу программы с нуля , я помогаю поправить код ! ---
andrewpalkin вне форума Ответить с цитированием
Старый 26.12.2010, 23:14   #8
Nikitos1992
 
Регистрация: 21.12.2010
Сообщений: 4
По умолчанию

error C2064: результатом вычисления фрагмента не является функция, принимающая 3 аргументов
вот ошибку выдает в строке:
ShowVariant("",N,N);
Nikitos1992 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C++]: Заменить слова, состоящие из одиночного символа 1 словом единица Virgil69 Помощь студентам 6 31.01.2016 22:19
Решение задачи alex22527 Помощь студентам 7 14.10.2010 18:07
Решение задачи Raphael Помощь студентам 4 07.10.2010 18:45
Решение задачи Raphael Помощь студентам 2 07.10.2010 09:43
Решение задачи(( ==Terman== Microsoft Office Excel 7 10.05.2009 20:10