تمرین 8.10 کتاب C++ How To Program
مثالی مفید برای توابع و اعضای داده ایستا کلاس ها
البته بازی که من نوشتم دقیقا مثل اون چیزی نیست که کتاب خواسته!
کمی نوع پیشرفته ترش هست!
تمرین کتاب خیلی ساده ترشو خواسته !
بازی که من نوشتم به صورت دو نفره هست و بازی با کامپیوتر نداره!
نوشتن بازی با کامپیوتر خیلی بیشتر زمان می بره به قول خود کتاب شاید هفته ها!
که خوب من همچین زمانی نداشتم! این کد ها هم 5 ساعت وقت برد نوشتم!
شیوه بازی خیلی اسونه!
اولش اسم دو بازیکن پرسیده میشه
بعدش یک صفحه گسترده باز میشه که صفحه بازی هست
در پایین صفحه مختصات جایی که شما اولین مهره خود را می خواهید منتقل دهید پرسیده می شود!
مختصات خود را انتخاب کنید اولین عدد را وارد کند سپس کلید Enter را بزنید بعد عدد دوم و دوباره
کلید Enter را فشار دهید! دقت کنید نیازی نیست شما پرانتز یا کاما بزارید!
از حرکت سوم به بعد در صورت پیروز نشدن فردی، باید مشخص کنید مهره از کجا برداشته بشه و کجا
گذاشته شود! برنده به صورت خودکار معرفی می شود و می تونید چند مرحله باهم بازی کنید...
کامپیوتر تعداد برد های هر بازیکن را ذخیره و پس از هر بازی نتیجه را نشان خواهد داد...
امیدوارم خوشتون بیاد!
البته بعضی جاهاشو می تونید به سلیقه خودتون تغییر بدید!
می توانید این بازی را از یکی از لینک های زیر دانلود نمایید !
کلاسی ساده برای محاسبه و چاپ مساحت و محیط یک مستطیل...
البته دو تمرین بعدی 12.9 و 13.9 هم مربوط به این کلاس هست ولی چون چیزخاصی نداشت
از نوشتنشون صرف نظر کردم!
شما می تونید کلاس هایی مشابه برای مثلث و دایره و مربع و ... به راحتی بنویسید...
می توانید کدهای این تمرین را از یکی از لینک های زیر دانلود بنمایید!
کلاس ترکیب کلاس های Time و Date
سعی کردم ساده بنویسم، سال کبیسه و یه سری اعتبار سنجی های داخل توابع set را در نظر نگرفتم!
این برنامه هم اگر اجرا کنید تا ابد براتون کار می کنه!
البته نمی دونم دقتش چقدره :d
می توانید کدهای این تمرین از را از لینک های زیر دانلود کنید!
در بعضی از کدهایی که تا به حال گذاشتم دوتابع مشابه وجود داره!
clrscr()
gotoxy(int x,int y)
تابع اولی کارش ساده هست.
با هربار فراخوانی این تابع کلا صفحه پاک میشه!
تابع دومی شامل دو مختصات هست که اشاره گر نویسه را به انجا منتقل می کنه ،
x مکان اشاره گر نویسه را در طول خط نشان می دهد و y نشان دهنده چندمین خط می باشد!
مثلا
gotoxy(8,8);
اشاره گر نویسه را به مکان هشتم از خط هشتم صفحه می بره
و از اونجا هر عبارتی که شما بخواهید چاپ می شود.
این دوتابع تقربیا منسوخ هستند! ولی چون ما هنوز باید به این شیوه نرم افزار بنویسیم
یه کاربرد خاص در نوشتن پروژه هایی که برای استاد می نویسید داره می تونید
به زیباسازی صفحه و نظم بخشیدن به پروژتون کمک کنه ...
این توابع در کتابخانه های نرم افزار Microsoft Visual Studio 2010 موجود نیست و باید تعریف بشن
کافی هست کدهای خود تابع را در فایلتون کپی کنید!
لازم نیست کد های داخل این دو تابع را بفهمید فقط کافیه بدونید که این دوتابع چه کاری می کنند...
البته برای اجرای کدهای این دوتابع باید فایل هدر
#include < windows.h>
را ضمیمه فایل کدهای خودتون کنید...
پیاده سازی توابع را از لینک های زیرمی توانید دانلود کنید...
من خودم با این مثال قبل از میان ترم برای چند تا از بچه ها شی گرایی را توضیح می دادم...
در عین سادگی کاملا محتوایی شی گرایی را انتقال میده...
پیشنهاد می کنم اگر هنوز شروع نکردید شی گرایی را ، از این برنامه ساده شروع کنید...
در واقع این کلاس یه ساعت خیلی ساده هست وقتی اجراش بکنید تا زمانی که برنامه را
نبسته اید به کار خودش ادامه می ده!
می توانید کدهای این تمرین از لینک های زیر دانلود کنید!
می توانید کدهای این تمرین را در زیر دانلود کنید...
روش اول :
روش دوم:
تفاوت این دو روش در شیوه پیاده سازی utility function آن ها می باشد که دومی را خودم نوشتم!
می توانید کدهای این تمرین را در زیر دانلود کنید...
البته تا جایی که تونستم سعی کردم بهینه باشه!
می توانید کدهای این تمرین را در زیر دانلود کنید...
می توانید کدهای این تمرین را در زیر دانلود کنید...
می توانید کدهای این تمرین را در زیر دانلود کنید...
با تشکر از دوست خوبم آرش موسوی
شکل لوزی را با کاراکتر ستاره چاپ می کنه!
به شخصه خیلی از این برنامه خوشم میاد!
می تونید یک مستطیل را با اضلاع دلخواه و با سرعت دلخواه را با یک کاراکتر دلخواه پر کنید...
کد ساده ای دارد...
خوشم نیومد
برنامه اصلی اینه!
اونطوری که خودم دوست داشتم نوشتمش...
بعضی وقت ها ادم از روی بی حوصلگی کد می نویسه!
نتیجه اش میشه این!
کاملا شانسی نوشتمش!
اسمش گذاشتم موشک اعداد...
تمرین 3.14 کتاب C++ How To Program به نام Employee Class
می توانید کدهای این تمرین را در زیر دانلود کنید...