پروژه پایان ترم درس برنامه سازی پیشرفته(گیت/Gate)

با سلام
استاد موحدیان پروژه درس برنامه سازی پیشرفته را برای تمامی دانشجویانی که با ایشان این درس را برداشته بودند مشخص کردند.
بخاطر سوالات فراوان دانشجویان توضیح این پروژه را در زیر برایتان می آورم.
تذکرخیلی مهم:
استاد تاکید کردند که اگر کسی پروژه پایان ترم را تحویل ندهد برگه کتبی امتحان پایان ترمش را صفر رد می کنند.در ضمن ایشان اسامی تمام کسانی را که با ایشان کلاس داشتند را در یک لیست بلند بالا دارند.پس راه فراری از دست پروژه وجود ندارد.

و اما پروژه:
شما باید این پروژه را با قابلیت شی گرایی ++C یا همان (++OOP in C) بنویسید.
در این پروژه کاربر باید بتواند هنگام ورود به برنامه شما تعداد گیت های مرحله اول را مشخص کند.یعنی باید این قابلیت را داشته باشد که بتواند تعداد گیت های And,Or,NAnd,Nor را تعیین کند.
تعداد ورودی های هر گیت بالا را، هم دانشجو می تواند در پروژه مشخص کند و هم می توان این قابلیت را در پروژه گنجاند که کاربر بتواند همچین کاری را انجام دهد.
توجه داشته باشید که حداقل تعداد داده ورودی برای هر گیت 2 داده بولین است.یعنی کاربر نباید بتواند کمتر از دو داده وارد کند زیرا ما برای مقایسه داده ها و پس دادن نتیجه واحد حداقل به دو داده بولین در هر دریچه نیاز داریم.
نحوه کار هر دریچه:
دریچه And:


این دریچه با گرفتن داده های بولین آنها را به صورت ضرب بولی با هم ضرب می کند.ضرب بولی به شکل زیر است:
1=1*1
0=1*0
0=0*1
0=0*0

دریچه Or:

این دریچه با گرفتن داده های بولین آنها را به صورت جمع بولی با هم جمع می کند.جمع بولی به شکل زیر است:
1=1+1
1=1+0
1=0+1
0=0+0
دریچه NAnd:

این دریچه با گرفتن داده های بولین آنها را به صورت عکس ضرب بولی با هم ضرب می کند.یعنی هرچه حاصل ضرب بولی است قرینه اش می کند:
0=1*1
1=1*0
1=0*1
1=0*0
دریچه Nor:

این دریچه با گرفتن داده های بولین آنها را به صورت عکس جمع بولی با هم جمع می کند.یعنی هر چه حاصل جمع بولی است قرینه اش می کند:
0=1+1
0=1+0
0=0+1
1=0+0


توجه داشته باشید که جبر بولی مانند جبر های معمولی است.فقط حاصل 1+1 برابر 1 می شود.
من از استاد که پرسیدم ایشان گفتند که نیازی به تعریف دریچه های Not , Xor نیست.چون این دو دریچه با یک داده بولین هم می توانند عمل مقایسه را انجام دهند و خروجی واحدی برگردانند.
مرحله دوم:
مرحله اول را دوباره تکرار می کنیم.با این تفاوت که ورودی های دریچه های مرحله دوم همان خروجی های مرحله اول است به علاوه ورودی هی جدیدی که کاربر می خواهد آنها را وارد کند.
در این مرخله کاربر باید رابطه میان دریچه های مرحله اول را با دریچه های مرحله دوم مشخص کند.
مراحل بعدی:
مرحله دوم را آنقدر تکرار می کنیم تا به یک دریچه تنها برسیم و از آن دریچه تنها هم به یک جواب بولین واحد برسیم.
تذکر خیلی مهم:
توجه داشته باشید که تعداد دریچه ها یا همان گیت ها در هر مرحله باید کمتر از مرحله قبل باشد.
مهلت ارسال پروژه:
مهلت ارسال پروژه تا یک هفته بعد از آخرین امتحان پایان ترم دانشگاه می باشد.
نحوه تحویل پروژه:
پروژه ها باید به صورت فایل سورس و با پسوند Cpp بوده و آنها را در یک فایل Zip شده تحویل استاد دهید.
در فایل Zip شده باید یک فایل ورد حاوی توضیح پروژه و نحوه انجام آن قرار داده شود.
همچنین باید فایل سورس پروژه نیز حاوی کامنت باشد.
پروژه ها را به آدرس زیر ایمیل کنید و موضوع ایمیل هم باید شماره دانشجویی تیم پروژه باشد که با (_) از هم جدا شده اند.
amovahedian@hotmail.com
نام فایل ارسالی هم باید شماره داشجویی تیم پروژه و نام و نام خانوادگی اعضای تیم باشد.
ایمیلی که به استاد زده می شود باید ایمیل یکی از اعضای تیم پروژه باشد.
زمان ارائه پروژه:
زمان ارائه پروژه از طریق ایمیلی که پروژه فرستاده شده است به تیم اعلام می شود.

پی نوشت1:
می توانید برای آشنایی بیشتر با گیت های منطقی به اینجا مراجعه کنید که دانشجوی محترم "کنجکاو " اونو تو بخش نظرات گذاشته.من خودم دیدم.خوب بود.
پی نوشت2:
می توانید برای آشنایی بیشتر با گیت های منطقی به اینجا مراجعه کنید که دانشجوی محترم "فلر " اونو از طریق ایمیل ارسال کردند.


به اشتراک بگذارید
بدون بازخورد "پروژه پایان ترم درس برنامه سازی پیشرفته(گیت/Gate)"