مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

مرتضی احمدی

عضویت از 1397/09/27

برج هانوی با استفاده از توابع

  • چهارشنبه 5 دی 1397
  • 23:16
تشکر میکنم

سلام و خسته نبشید خدمت  اساتید  

کد برج هانوی   با استفاده از تابع xy  در محیط c++ بصورت  command line رو میخوام.

شروط برنامه :

1-دیسک برداشته شده باید روی یک میله قرار بگیرد 

2- فقط یک دیسک در یک زمان میتواند انتقال یابد 

3-دیسک بزرگ نمیتواند روی دیسک کوچک قرار بگیرد

منطق برنامه: 

با استفده از   رسم خطوط عمودی در صفحه   3 خط عمودی بعنوان میله رسم میکنیم .و به هر خط  یک اسم میدهیم که  هنگام فراخوانی مجبور به نوشتن مختصات نباشیم 

روی خط اول سه دیسک تعریف میکنیم(این کار را میشود با سه خط افقی انجام داد و به آنها نیز اسم خاص اختصاص داد)

 با شروط  و دستورات  go to  مکان سه دیسک را طبق برنامه ریزی برج هانوی جابجا میکنیم.

در انتهای برنامه  با دستور delay ثانیه ای وقفه برای نمایش هر خط   استفده میکنیم.  

 

این هم کد ساده ی این برنامه هستش    :

#include <stdio.h> 

// C recursive function to solve tower of hanoi puzzle 
void towerOfHanoi(int n, char from_rod, char to_rod, char aux_rod) 

  if (n == 1) 
  { 
    printf("\n Move disk 1 from rod %c to rod %c", from_rod, to_rod); 
    return; 
  } 
  towerOfHanoi(n-1, from_rod, aux_rod, to_rod); 
  printf("\n Move disk %d from rod %c to rod %c", n, from_rod, to_rod); 
  towerOfHanoi(n-1, aux_rod, to_rod, from_rod); 

int main() 

  int n = 3; // Number of disks 
  towerOfHanoi(n, 'A', 'C', 'B'); // A, B and C are names of rods 
  return 0; 
}

  

دوستان  متن بالا درک خودم از برنامه ای هست که استاد محترمم از بنده خواسته و پیاده سازی در محیط c++ رو اگر کسی میتونه ممون میشم کمکم کنه .

چه  گرافیکی چه command lineباشه   ممنون از نظرات شما 

یا حق 

پاسخ های این پرسش

تعداد پاسخ ها : 0 پاسخ
در حال حاضر هیچ پاسخی ارسال نشده است
کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)