درباره این حرکت!

قصدم از ساخت همچین جایی این بود که در حین گذروندن دروس مختلف توی دانشگاه و انجام پروژه‌های مرتبط با اونها، پروژه‌های دروس نسبتن مهم‌تر رو اینجا دورهم جمع کنم تا آیندگان هم اگر نیاز داشتن بتونن ازشون استفاده بکنن. سورس کد پروژه ها در حساب گیتهاب بنده هستش و این لینک صرفن برای دسترسی راحت‌تر برای کسانی که آشنایی با گیتهاب ندارن ساخته شده. اگر پیشنهاد یا مشکلی در کدها مشاهده میکنین حتمن بهم خبر بدین.

me@ashkanam.ir


اگرم حساب گیتهاب دارین، استار زدنتون مزید امتنان است :)

مبانی برنامه‌نویسی

    سیستم مدیریت کتابخانه

قابلیت‌ها:

  • با استفاده از ساختار struct
  • درج، حذف و آپدیت اطلاعات کتاب‌ها و نویسندگان
  • قابلیت خواندن و ذخیره کردن اطلاعات در فایل
  • جستجو بین کتاب‌ها و نویسندگان براساس نام و آیدی

نوشته شده به زبان: سی‌پلاس‌پلاس

برنامه‌نویسی پیشرفته

    سیستم مدیریت فروشگاه

قابلیت‌ها:

  • ثبت و تغییر نام شعبه فروشگاه
  • با استفاده از لیست‌های پیوندی
  • درج و حذف اقلام از انبار
  • محسابه سود فروش

نوشته شده به زبان: سی‌پلاس‌پلاس

    سیستم مدیریت دانشجویان

قابلیت‌ها:

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

نوشته شده به زبان: سی‌پلاس‌پلاس

ساختمان داده‌ها

    درخت شجره‌نامه

قابلیت‌ها:

  • با استفاده از ساختمان‌داده لیست‌های پیوندی
  • انجام عملیات درج، حذف و آپدیت هر گره از درخت شجره‌نامه
  • جستجو بین اعضای خانواده
  • نمایش اطلاعات خاص مانند عمو، فرزندان و پدر هر گره
  • دارای ساختار شی‌گرایی

نوشته شده به زبان: سی‌پلاس‌پلاس

    سیستم آمارگیری از متون

قابلیت‌ها:

  • با استفاده از ساختمان‌داده درخت جستجو دودویی (BST)
  • خواندن اطلاعات متن از فایل و ذخیره گزارشات در فایل
  • جستجو یک کلمه و چاپ تکرار آن با استفاده از درخت BST
  • درج و حذف کلمه از درخت BST با مرتبه زمانی مناسب
  • چاپ تمام کلمات به ترتیب حروف به همراه تعداد تکرار آن‌‌ها
  • چاپ تمام کلمات به ترتیب تعداد موجود از هر کدام(بیشترین به کمترین) به همراه تعداد تکرار آن‌ها
  • دارای ساختار نخی بودن (Threaded BST)
  • ذخیره درخت خروجی در فایل و بازیابی آن

نوشته شده به زبان: سی‌پلاس‌پلاس

آزمایشگاه سیستم‌عامل

    ساخت دستور جدید Shell

قابلیت‌ها:

  • ایجاد آپشن‌های شخصی سازی شده جدید به دستور ls -l
  • انجام دستور ls -l با بش و ارسال خروجی آن به کد سی‌پلاس‌پلاس و انجام عملیات شخصی‌سازی شده

نوشته شده به زبان: سی‌پلاس‌پلاس و بش (Bash)

    انجام عملیات مختلف روی فایل و دایرکتوری در لینوکس

قابلیت‌ها:

  • تشخیص بیشتر بودن حجم یک فایل از صفر بایت
  • تشخیص بزرگ یا کوچک بودن نام فایل و دایرکتوری‌ها و تغییر آن‌ها به کوچک
  • تشخیص و تعیین دسترسی‌های مختلف مانند فقط خواندنی، نوشتنی و اجرایی روی فایل‌ها
  • کپی کردن محتویات یک دایرکتوری در دایرکتوری وارد شده توسط کاربر

نوشته شده به زبان: بش (Bash)

نظریه زبان‌ها و ماشین‌ها

    شبیه‌ساز ماشین‌های پذیرنده متناهی و تورینگ

قابلیت‌ها:

  • شبیه‌ساز پذیرنده متناهی قطعی (DFA)
  • شبیه‌ساز پذیرنده متناهی غیرقطعی (NFA)
  • شبیه‌ساز ماشین تورینگ (Turing)
  • شبیه‌ساز ماشین پذیرنده پشته‌ای قطعی (DPDA)
  • خواندن stateها از فایل

نوشته شده به زبان: سی‌پلاس‌پلاس

اصول طراحی کامپایلر

    کامپایلر ساده برای زبان مینی‌پاسکال

قابلیت‌ها:

  • تبدیل عبارات منظم گرامر به NFA
  • تبدیل NFA به DFA
  • ساده‌سازی DFA
  • پارس کردن سورس‌کد ورودی برنامه با استفاده از تجزیه‌گر Recursive Decsent
  • ساخت درخت نحو (Abstract syntax tree)

نوشته شده به زبان: پایتون

    تبدیل اعداد رومی به صحیح و بالعکس

قابلیت‌ها:

  • تبدیل اعداد رومی به اعداد صحیح با استفاده از قوانین SDD
  • تبدیل اعداد صحیح به اعداد رومی با استفاده از قوانین SDD

نوشته شده به زبان: پایتون

مبانی هوش محاسباتی

    تشخیص کارکتر با استفاده از شبکه‌های عصبی

قابلیت‌ها:

  • نوشته شده به دو زبان متفاوت در دو نسخه مختلف
  • تشخیص کارکتر‌ها با استفاده از شبکه عصبی تک‌لایه پرسپترون (Perceptron)
  • استفاده از هفت، چهار و سه سلول در شبکه پرسپترون
  • تشخیص کارکتر‌ها با استفاده از شبکه عصبی آدلاین (Adeline)
  • تشخیص کارکتر‌ها با استفاده از شبکه عصبی پس انتشار خطا (Back Propagation)
  • محاسبه درصد خطای یادگیری

نوشته شده به زبان: پایتون و سی‌پلاس‌پلاس