تماس درباره   صفحه اصلی
  زبان ++C > تمرين  
 
 

تمرينات برنامه نويسی – سری پنجم


1- توابع زير را به کلاس sLinkList اضافه کنيد.

void add_after(char a_word, char word_after) گره ای حاوی کاراکتر word_after را بعد از گره ای شامل کاراکتر a_word اضافه می کند. اگر ليست شامل این کاراکتر نباشد تغييری در آن ايجاد نمی شود.
void delete_node(char a_word) اولين گره حاوی کاراکتر a_word را حذف می کند.
void list_selection_sort() ليست را به ترتيب حروف الفبا مرتب می کند.
void list_Reverse() ترتيب گره های ليست را عکس می کند.

2- کلاس cList که خطوط متنی را در يک ليست پيوندی يک طرفه ذخيره می کند با اعضای زير ايجاد کنيد.

• سازنده برای ايجاد يک ليست تهی
• تابعی برای درج در انتهای ليست
• تابعی برای حذف از ابتدای ليست
• تابعی برای حرکت به گره بعدی
• تابعی برای حرکت به ابتدای ليست
• تابعی برای حرکت به انتهای ليست
• تابعی برای نمايش محتوای ليست
• تعيين رسيدن به انتهای ليست
• برگردادن داده گره جاری
• برگردادن داده گره بعدی

3- کلاسی برای ذخيره اطلاعات نام و شماره و نمرات دانشجويان يک کلاس در يک ليست پيوندی ايجاد کنيد. برنامه ای بنويسيد که اطلاعات را ذخيره، ميانگين کل کلاس را محاسبه کند. برنامه بايد قادر باشد با دريافت شماره دانشجویی اطلاعات مربوطه را از لیست حذف کند.

4- يک کلاس برای ذخيره ضرايب و توان يک چند جمله ای در يک ليست پياده سازی کنيد.

anxn +an-1xn-1 + …. + a1x + a0

• هر گره ليست شامل ضريب و توان يک جمله است
• تابعی برای محاسبه چد جمله ای بر حسب x بنويسيد.
• تابعی برای نمايش مناسب چند جمله ای بنويسيد.

5- برنامه ای بنویسید که فایل منبع خود را نمایش بدهد.

6- برنامه فوق را به صورتی تغییر دهید که فایل منبع خود را بجز خطوطی که توسط /* */ به صورت توضيحات مشخص شده نمایش دهد.

7- برنامه ای بنویسید که تعداد کاراکترها و تعداد خطوط یک فایل متن را شمارش کند.

8- برنامه ای بنويسيد که محتوای دو فايل متن را با هم مقايسه کند و خطوطی که با هم تفاوت دارند را نمايش دهد. برنامه بايد فايل ها را خط به خط با هم مقايسه کند تا به به اولين اختلاف برسد.

9- برنامه ای بنويسيد که يک کلمه و نام يک فايل را از خط فرمان دريافت کرده مشخص کند اين کلمه به چه تعداد و در چه خطوطی از فايل تکرار شده است.

10- خروجی برنامه زير چيست؟

#include <iostream.h>
#include <fstream.h>

int main()
{
  char character;
  int integer;
  ofstream out_stream;
  ifstream in_stream;

  /* Create a file containing two integers */
  out_stream.open("Integers");
  out_stream << 123 << ' ' << 456;
  out_stream.close();

  /* Attempt to read a character, then an integer,
    then a character again, then an integer again,
    from the file "Integers" just created. */
  in_stream.open("Integers");
  in_stream >> character >> integer;
  cout << "character: '" << character << "'\n";
  cout << "integer: " << integer << "\n";
  in_stream >> character >> integer;
  cout << "character: '" << character << "'\n";
  cout << "integer: " << integer << "\n";
  in_stream.close();

  return 0;
}

11- کلاس Cdocument را طراحی کنيد که از کلاس cList مشتق شده باشد. Cdocument بايد دارای اعضای زير باشد:

• سازنده ای که نام فايل ديسک را بعنوان پارامتر می گيرد و فايل را باز می کند
• تابعی برای خواندن فايل و ذخيره آن در يک ليست پيوندی قرار می دهد.
• تابعی که یک صفحه ( 24 خط ) از ليست را نمایش دهد

12- بیمارستانی دارای سه بخش است. سه لیست برای بیماران درحال انتظار عمل برای هر بخش درنظر گرفته شده است. هر بیمار به انتهای لیست بخش مربوط اضافه می شود بجز بیماران ارژانسی که در ابتدای لیست اضافه می شوند. بيماران که برای عمل انتخاب می شوند از ابتدای ليست انتخاب و حذف می شوند. بيمارانی که در حين انتظار برای عمل فوت می کنند از ليست مربوط حذف می شوند. برنامه ای برای پياده سازی و مديريت لیستهای انتظار بیمارستان بنويسيد. یک ساختمان برای ذخيره اطلاعات مربوط به بیمارتعريف کنيد. کلاس Queue صف بیماران یک بخش را در یک ليست پيوندی ذخيره می کند. رکورد بیماران به صورت پویا حذف و اضافه می شود.


 


 


صفحه اصلی| PDF| درباره| تماس