задачка по С++

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by sanua, 20 May 2007.

  1. sanua

    sanua New Member

    Joined:
    19 May 2007
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    Написать программу, отыскивающую проход по лабиринту с использованием контейнерного класса stack из STL. Лабиринт представляется в виде матрицы, состоящей из квадратов. Каждый квадрат либо открыт, либо закрыт. Вход в закрытый квадрат запрещен. Если квадрат открыт, то в вход в него возможен со стороны, но не с угла. Программа находит проход через лабиринт, двигаясь от заднего входа. После отыскивания прохода программа выводит найденный путь в виде координат. квадратов.
    (в 3 файла - main.cpp,head.h,stack.cpp ) Это задание моего курсовика. Помогите пожалуйста. курсач горит =( может кто выожить исходники? Буду очень благодарен за любую помощь)
     
    #1 sanua, 20 May 2007
    Last edited: 28 May 2007
  2. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    Алго простейший. Просто есть 4 переменные u, r, d, l. Т.е. вверх, вправо, вниз, влево. Заносишь в стек первую. Если туда можно перейти, то обрабатываешь следующий квадрат(но не тот, который на верху стека, т.к. это будет возвратом назад). Если нельзя, то заменяешь переменную на следующую(enum в помощь). Если переменная эта l(т.е. квадрат не имеет выхода), то снимаем верхушку стека и перебираем дальше.
     
  3. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    А еще можно просто алгоритмом фронта волны ;)
    Тогда вообще задача будет примитивной и никакие стеки нахрен не нужны будут.
     
  4. sanua

    sanua New Member

    Joined:
    19 May 2007
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    если бы можно было бы увидеть исходники((в 3 файла)с использованием контейнерного класса stack из STL) моей благодарности не было б предела :rolleyes:
     
    #4 sanua, 20 May 2007
    Last edited: 20 May 2007
  5. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    писать лень... алго тебе сказали, осталось закодить.
     
  6. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    просто представь все открытые квалраты ввиде узлов графа, а соседние квадраты соедени ветвями. И просто сделай алгоритм фронта волны(use google, «алгоритм волны»). А стек тут нахрен не нужен, он лишь будет нужен для хренового способа(который самый очевидный, я его привел первым)
     
  7. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    http://algolist.manual.ru/games/wavealg.php
    вот тут типа описание, но я бы кодеру этого говнокода руки бы оторвал, т.к. можно в несколько раз короче записать
     
  8. sanua

    sanua New Member

    Joined:
    19 May 2007
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    большое спасибо за инфу :) пойду мучать С
     
  9. sanua

    sanua New Member

    Joined:
    19 May 2007
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    пробывал...никак не получается сделать прогу(видимо сказывается "опытность")...Люди!кто знает как решить данную задачку? прошу помогите исходниками(и именно - с использованием контейнерного класса stack из STL :( ). Буду очень благодарен!
     
  10. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    хочешь я открою тебе страшную тайну? есть такой мегахеккерский сайт гуголь.
    Ио н может ответить на твой вопрос.
    Я даже у него спросил. И он правильно ответил.
    Пользуйся моей добротой: http://www.google.com/search?q=STL+stack

    P.S. задача легкая, но для того, чтобы ее решить, надо не тупо копировать код, но еше и думать. Головой.
     
  11. _Great_

    _Great_ Elder - Старейшина

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,119
    Reputations:
    1,139
    Алгоритм объяснили, за синтаксисом использования STL - открываешь Google и вбиваешь в поиск слово "STL". Первая же ссыль на мануал. Ищешь там ветку Containers, в ней - stack. И смотришь как его использовать.
    PS. Пользуйся моей добротой (С) нер: http://www.sgi.com/tech/stl/stack.html
     
  12. sanua

    sanua New Member

    Joined:
    19 May 2007
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    да все это хорошо.вот только знаком с С++ 4 месяца(да и то за эти 4 месяца толком не научился) + до этого никаких языков не изучал,так что сам прогу не могу написать...а вам я и написал в надежде на помощь.
     
  13. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    А я меньше. И что?
     
  14. _Great_

    _Great_ Elder - Старейшина

    Joined:
    27 Dec 2005
    Messages:
    2,032
    Likes Received:
    1,119
    Reputations:
    1,139
    Если помощь == написание за тебя всей программы, тогда долго тебе искать придется энтузиастов. Сессия ща, времени мало
     
  15. nerezus

    nerezus Banned

    Joined:
    12 Aug 2004
    Messages:
    3,191
    Likes Received:
    729
    Reputations:
    266
    слушай сюда, кросавчег
    если я те напишу, то ты нихрена не поймешь тему и будет хуже только тебе. Поэтому хватит 2.78бать вола, просто попробуй сделать и у тебя все получится. Just trust me ;)
     
    1 person likes this.
  16. N1K

    N1K New Member

    Joined:
    11 Feb 2007
    Messages:
    10
    Likes Received:
    4
    Reputations:
    0
    ТОесть как не сможешь написать? Азы знаешь? Ситаксис? Операторы? Думаю да, если 4 месяца изучаешь. А если взялся за С++, значит и английский тоже хоть немного но знаешь... В таком случае за несколько дней вполне реально разобраться и решить задачу.
     
  17. sanua

    sanua New Member

    Joined:
    19 May 2007
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    в том и дело я - совершенно не знаю С++ (как вы понять не можете =) ) и разбирусь я в этой теме лучше после сесии !) люди пожалуйста помогите с прогой) я вам буду благодарен всю жизнь!)