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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2017, 14:25   #1
Vyacheslav.
Форумчанин
 
Регистрация: 22.10.2017
Сообщений: 113
По умолчанию Ханойские Башни на Delphi

Помогите пожалуйста дописать игру "Ханойские Башни" на Делфи.
Сложно разобраться с ней, постоянно какие-то ошибки.
Вложения
Тип файла: rar Hanoiskie Baschni.rar (496.8 Кб, 17 просмотров)
Vyacheslav. вне форума Ответить с цитированием
Старый 22.10.2017, 16:31   #2
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

На этом этапе это как в шутке про сову. Я типа свои два круга нарисовал, а вы все помогите мне дорисовать сову..
Black Fregat вне форума Ответить с цитированием
Старый 20.11.2017, 07:40   #3
Vyacheslav.
Форумчанин
 
Регистрация: 22.10.2017
Сообщений: 113
Сообщение

Согласен. Помогите на этом этапе пожалуйста. Игра готова, но с багами.
Нужно сделать чтобы победа засчитывалась если башня была собрана как на втором, так и на третьем стержне.
И сделать чтобы корректно работал SpinEdit.
И подскажите как закодить кнопку "обновить"
Вложения
Тип файла: rar Hanoiskie Baschni.rar (473.5 Кб, 18 просмотров)
Vyacheslav. вне форума Ответить с цитированием
Старый 20.11.2017, 09:52   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

Код:
 if  (  ( (L.Hint = 'XX') and (M.Hint = 'XX') ) 
  or ( M.... and R... ) 
  or ( ... ) )  then  ShowMessage('Вітаю! Ви перемогли!');
Цитата:
корректно работал SpinEdit.
??? Игру не пробовал.
Цитата:
закодить кнопку "обновить"
==начать сначала???
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 20.11.2017, 10:59   #5
Vyacheslav.
Форумчанин
 
Регистрация: 22.10.2017
Сообщений: 113
По умолчанию

Цитата:
Сообщение от evg_m Посмотреть сообщение
if ( ( (L.Hint = 'XX') and (M.Hint = 'XX') )
or ( M.Hint = 'XX' and R.Hint = 'XX' )
then ShowMessage('Вітаю! Ви перемогли!');
Не помогло..

Цитата:
Сообщение от evg_m Посмотреть сообщение
??? Игру не пробовал.
Уже вроде бы настроил.

Цитата:
Сообщение от evg_m Посмотреть сообщение
==начать сначала???
Да, как закодить кнопку обновить, чтобы диски возвращались на место(1-й стержень).
Vyacheslav. вне форума Ответить с цитированием
Старый 20.11.2017, 11:17   #6
Vyacheslav.
Форумчанин
 
Регистрация: 22.10.2017
Сообщений: 113
Сообщение

Сделал
Код:
 if (L.Hint = 'XX') and (M.Hint = 'XX') or (L.Hint = 'XX') and (R.Hint = 'XX') then  ShowMessage('Вітаю! Ви перемогли!');
Осталось только закодить кнопку обновить.. подскажите как?
Vyacheslav. вне форума Ответить с цитированием
Старый 20.11.2017, 17:40   #7
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

поместить диски(share a,b,c,....) на "старое" место (left, top:=.... )
Код:
a.left:=144; a.top:=184;
....
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 20.11.2017, 17:58   #8
Vyacheslav.
Форумчанин
 
Регистрация: 22.10.2017
Сообщений: 113
Сообщение

evg_m, так выходит...
Изображения
Тип файла: png neto.png (10.9 Кб, 137 просмотров)
Vyacheslav. вне форума Ответить с цитированием
Старый 20.11.2017, 18:39   #9
MyName-Name-MyName
 
Регистрация: 15.11.2017
Сообщений: 7
По умолчанию

Если хотите помощи - то надо красиво оформить код.


Во вторых, если вы делаете подобную программу - почитай про массивы

В массиве храните список картинок. По индексу обращайтесь к нужной картинке

Создайте нормальный CASE а не связку из else - if (А лучше опять же массив из 3 элементов - содержащие позицию нужных квадратов на форме.. 20 строк кода максимум)

Задача на столько лёгкая - что можно сделать за две минуты - при условии что знаете язык, и не ленитесь изучать его.

Если вы не желаете нормально изучать язык - это целиком и полностью ваша проблема, и решить её вам помогут в платном разделе
MyName-Name-MyName вне форума Ответить с цитированием
Старый 20.11.2017, 19:25   #10
Vyacheslav.
Форумчанин
 
Регистрация: 22.10.2017
Сообщений: 113
По умолчанию

MyName-Name-MyName,
Я начинающий программист, поэтому быдловский код.
Использую фигуры, а не картинки.
Желаю, но сроки слишком короткие, с заданием не повезло.
Vyacheslav. вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
"Ханойские башни", не разрешать класть большой диск на маленький - Delphi timsso Общие вопросы Delphi 0 14.11.2015 18:05
Ханойские башни student71 Общие вопросы C/C++ 0 03.10.2011 21:52
Ханойские башни fs444 Общие вопросы C/C++ 10 30.03.2010 16:02
Ханойские башни.С++ nN1 Помощь студентам 1 09.11.2009 19:51
Ханойские башни Vistar Паскаль, Turbo Pascal, PascalABC.NET 2 23.05.2009 02:05