یک برنامهٔ C++ بنویسید که یک خط کد ساده را به‌عنوان ورودی دریافت کند و با استفاده از regex آن را به توکن‌های پایه‌ای (کلیدواژه‌ها مثل if, else, while، شناسه‌ها، اعداد صحیح، عملگرها مانند + - * / و پرانتزها) تقسیم کرده و هر توکن را همراه با نوع آن چاپ کند.

3.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:36

0.0

برای حل مسئله از کتابخانهٔ در C++ استفاده کنید: یک لیست از الگوهای منظم مرتب شده (مثلاً ابتدا کلیدواژه‌ها، سپس شناسه‌ها، سپس اعداد و در انتها عملگرها و علامت‌ها) تهیه کنید و با کمک std::sregex_iterator متن را پیمایش و هر تطبیق را به‌عنوان یک توکن شناسایی کنید؛ ترتیب الگوها مهم است تا «if» به‌عنوان کلیدواژه و نه شناسه شناسایی شود. نکات عملی: فاصله‌ها را نادیده بگیرید، برای عملگرها و کاراکترهای خاص از escape استفاده کنید، و هنگام چاپ نوع توکن و مقدار آن فرمت خوانایی انتخاب کنید.

توسط پژوهشگر در 202 روز قبل ساعت 02:36
دسته بندی ها: C Plus Plus C Plus Plus for beginner
arman در 202 روز قبل ساعت 09:06

به‌خوبی کلیدواژه‌ها را اولویت‌بندی کن و در الگوی منظم به‌شدت از شناسه‌ها متمایزشان کن تا مثل if به‌عنوان کلیدواژه تشخیص داده شود. ترتیب الگوها (کلیدواژه‌ها، سپس شناسه‌ها، اعداد، آنگاه عملگرها) اهمیت دارد تا تداخل و مشکلات کلاس‌بندی کاهش یابد. فاصله‌ها را نادیده بگیر و برای کاراکترهای ویژهٔ regex از escape مناسب استفاده کن (مثلاً \+, \), \() تا تطبیق‌ها دقیق باشند. هنگام چاپ، نوع توکن و مقدار آن را با فرمت خوانا نمایش بده و خطای ورودی نامناسب یا خالی را به‌خوبی گزارش کن.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری