PDA

View Full Version : سوال: برنامه رسم dfa با ++c



firoozi90
دوشنبه 06 خرداد 1392, 19:38 عصر
سلام دوستان
من باید پروژه ای به استاد تحویل بدم به این صورت که :
dfaدلخواه رو رسم كنه با توجه به قوانيني كه براش تعريف مي كنيم و بعد رشته
رو از كاربر بخواد و در نهايت بگه كه آيا رشته عضو زبان هست يا نه ؟
البته بايد بصورت گرافيكي باشه .

لطفا منو راهنمایی کنید و بگید چطور می تونم این کارو انجام بدم؟

maktoom
دوشنبه 06 خرداد 1392, 22:04 عصر
سلام
بحث گرافیکش به کنار. الگوریتم خود کار رو بلدید؟
پیشنهادم اینه که یه برنامه خیلی ساده بنویسید که یه dfa رو با قوانین ساده و ورودی های مختلف پیمایش کنه.
لااقل متوجه میشید نکات خاص رو درنظر میگیرد.
بطور کلی با switch و case سروکار دارید که داخل هر کدومشون هم چنتا if وجود داره. رشته کلی رو هم باید کاراکتر به کاراکتر بررسی کنید.
چون اتاماتا و نظریه جزو درسای ارشد هم هستن از یه استادی که دکتر باشه و ارشد هم درس میده برای مشورت کمک بگیرید.
بیش از اندازه که فکر کنید برنامتون نکته داره. که البته مختارید که درنظر بگیرید یا خیر. یعنی برنامتون قابل توسعه باشه یا خیر.
موفق باشید./

one hacker alone
سه شنبه 07 خرداد 1392, 03:39 صبح
ببیندی اگه همچنان روی تصمیمتون هستید که بخواید با سی++ بنویسید پس برای بحث گرافیکیش باید کامپایلر هایی که توابع گرفیک رو دارن استفاده کنید
مثل بورلند
در مورد اینکه ورودی رو ما تجزیه و تحلیل کنیم و dfa براش رسم کنیم هم به نظریه زبانتون برمیگرده
دستور خاصی نمیخواد به قول دوستمون از دستورات پایه باید استفاده کنید
اما در مورد گرافیک سعی کنید کارهارو ساختار یافته و oop کنید وگرنه به نتیجه نمیرسید اونقدر پیچیده میشه
ولی من جای شما بودم برای اینکه درگیر گرافیک نشم با زبان های ویژوال مینوشتم

firoozi90
سه شنبه 07 خرداد 1392, 08:09 صبح
سلام
بحث گرافیکش به کنار. الگوریتم خود کار رو بلدید؟
پیشنهادم اینه که یه برنامه خیلی ساده بنویسید که یه dfa رو با قوانین ساده و ورودی های مختلف پیمایش کنه.
لااقل متوجه میشید نکات خاص رو درنظر میگیرد.
بطور کلی با switch و case سروکار دارید که داخل هر کدومشون هم چنتا if وجود داره. رشته کلی رو هم باید کاراکتر به کاراکتر بررسی کنید.
چون اتاماتا و نظریه جزو درسای ارشد هم هستن از یه استادی که دکتر باشه و ارشد هم درس میده برای مشورت کمک بگیرید.
بیش از اندازه که فکر کنید برنامتون نکته داره. که البته مختارید که درنظر بگیرید یا خیر. یعنی برنامتون قابل توسعه باشه یا خیر.
موفق باشید./

مرسی هز راهنماییتون
اما متاسفانه توی فصل امتحاناته و با اساتید هم دسترسی ندارم و این پروژه هم وسط امتحانا باید تحویل بدم. و این خیلی سخته واسم
یه برنامه مشابه پیدا کردم اما نمیدونم چطور تغییرش بدم.چون که نه نظریه ام خوبه و نه گرافیک در سی

ممنون میشم این لطفو بکنید راهنماییم کنید

firoozi90
سه شنبه 07 خرداد 1392, 10:42 صبح
یه بزرگواری نیست به ما کمک کنه

firoozi90
چهارشنبه 08 خرداد 1392, 08:22 صبح
خواهشا یکی کمک کنه
بنی آدم اعضای یکدیگرند که در آفرینش ز یک گوهرند

maktoom
پنج شنبه 09 خرداد 1392, 23:07 عصر
نه نظریه ام خوبه و نه گرافیک در سی برنامه نویسیتون چطور؟
کمک بنده بیان الگوریتمه. کدش جدا چیز پیچیده ای نیست. نه فن خاصی در برنامه نویسی میخواد و نه توانایی دور از دسترسی.
کلا همش با پیمایش رشته و سوئیچ کیس و شرطهای تو در توئه. به ازای هر وضعیت یه کیس دارید. هر کیس وقتی شکست بخوره باید بره تو یه تابع شکست و برگرده به آخرین چند راهی. و بعد وضعیتی رو انتخاب کنه که هنوز انتخاب نشده.
چون قوانین ثابت هستن و شما برنامه ای نمی نویسید برای تمامی ماشین های دی اف آ پس بطور کلی برنامتون خیلی سادست و فقط کار زیادی میبره. چون شرطها زیاد هستن و کیس ها هم طولانی.
پس شما یک رشته ورودی دارید و یک ماشین دی اف آ که شکل اون رو روی کاغذ دارید. از روی ماشینتون و الفبای اون ماشین رشته ورودی رو بفرستید به سوئیچ. کاراکتر به کاراکتر بخونید بعد از روی ماشینی که روی کاغذ کشیدید ببینید به کجا میره.
دقیقا مثل خوندن نقشه از روی نقشه یه مسیر می مونه.
موفق باشید./