*دانشجویان محترم می توانید فایل زیر را که مقاله ای در مورد استانداردهای کدنویسی هست را دانلود و مطالعه کنید .
* تا جایی که می توانید قسمت های کلیدی برنامه ها را با تابع بنویسید.
1- برنامه ای بنویسید که دو ماتریس را از ورودی بخواند و حاصل ضرب آن ها را حساب کند و به فرم ماتریس (جدول دو در دو) چاپ کند؛
توجه کنید که در ضرب ماتریس ها باید ستون اولی با سطر دومی برابر باشد.
2- تابعی بنویسید که در درون یک رشته زیر رشته ای را جست و جو کند و اگر زیر رشته موجود بود محل شروع آن را برگرداند؛ اگر موجود نبود ۱- را برگرداند.
3- تابعی بنویسید که دو رشته را بگیرد و دو رشته را الحاق کند (رشته ی دوم را به ته رشته اول اضافه کند).
4- با استفاده از روش تخصیص آرایه به صورت پویا واشاره گر ها آرایه ای به طول n ایجاد کنید (n از کاربر گرفته می شود) .
مقادیر عناصر آرایه را از کاربر بگیرید، سپس با فراخوانی یک تابع و ارسال آرایه به آن، آرایه را به صورت صعودی مرتب کنید و در آخر آرایه مرتب شده را در تابع اصلی (Main) چاپ کنید.
5- با استفاده از اشاره گر ها یک آرایه سه بعدی با ابعاد m*n*k بسازید (m , n , k از کاربر گرفته می شود). با استفاده از اشاره گر ها عناصر آرایه سه بعدی را با فرمول m*n*k پر کنید و سپس به ترتیب آرایه را چاپ کنید !
راهنمایی برای پر کردن :
*( *( *( a + m ) + n ) + k ) = m*n*k
شکل مورد نظر برای چاپ :
a[m][n][k] = (m , n , k حاصل ضرب)
۶- برنامه ای بنویسید که یک عدد صحیح گرفته و معادل باینری آن را با تابعی بازگشتی محاسبه و چاپ کند.
* سوال زیر یکی از بهترین و کلاسیک ترین سوال های برنامه نویسی است؛ در موردش خوب فکر کنید و بعد سعی کنید به صورت بازگشتی پیاده سازی اش کنید؛ اگر نتوانستید حلش کنید به فکر کپی کد آن از جایی دیگر نباشید چون فرصت حل یکی از زیباترین سوال ها توسط خودتان را هدر می دهید.
7- سوال حرکت اسب یکی از سوال های محبوب و هیجان انگیز برای مبتدیان در برنامه نویسی است، شما باید برنامه ای بنویسید که یک اسب را در یکی از خانه های شطرنج قرار دهد و اسب را طوری جا به جا کند که اسب از همه خانه های شطرنج عبور کند بدون این که از یک خانه بیش از یک بار عبور کند .
* راهنمایی هایی که در ادامه آمده برای حل سوال کافی است؛ توجه داشته باشید که محل آغاز حرکت اسب را کاربر به برنامه می دهد .
راهنمایی:
در برنامه حرکت اسبی (knight tour)، اسب می تواند حرکاتی به شکل L انجام دهد(دو خانه در یک جهت و سپس یک خانه در جهت عمود بر جهت اول).
به این ترتیب یک اسب از خانه ای در وسط صفحه خالی شطرنج می تواند هر یک از هشت حرکت مختلف را که در شکل می بینید انجام دهد.
1 ) یک صفحه شطرنج ۸*۸ رسم کنید و سعی کنید مساله گردش اسب را با دست حل کنید . در اولین خانه ای که قرار می گیرید عدد ۱ و در دومین خانه عدد ۲ و در سومین خانه عدد ۳ و… را بنویسید. پیش از آغاز گردش مسافتی را که می تواند طی کند تخمین بزنید.
۲) برنامه ای بنویسید که اسب را در یک صفحه شطرنج گردش دهد. این صفحه را با یک آرایه دواندیسی(دو بعدی) نمایش دهید. در ابتدا تمام خانه ها را برابر ۰ قرار دهید. هر یک از هشت حرکت ممکن برحسب هر دو جز افقی و عمودی آن ها توصیف می شوند. مثلا حرکتی از نوع صفر به صورتی که در شکل نشان داده شده شامل یک حرکت افقی به سمت راست به اندازه دو خانه و یک حرکت عمودی به بالا به اندازه یک خانه است. این حرکت ها را می توان با ۲ آرایه ۸ تایی نشان داد که در شکل آمده اند.
horizontal = افقی vertical = عمودی
نکته کلیدی :
اگر توجه کرده باشید خانه هایی که در گوشه هستند دردسر ساز ترند برای همین خانه ها را در جه بندی می کنیم و برای گوشه ها اهمیت بیشتری قایل می شویم. این درجه بندی را در شکل می بینید.
سعی کنید خانه هایی را زودتر پر کنید که عدد کمتری داخل آن است . مثلا اگر اسب می توانست به خانه هایی با ارزش ۲ و ۴ و ۸ برود، اول به خانه ای که ارزش ۲ دارد، برود .