سلام خدمت دوستان
در اینجا من کدی رو قرار میدم که در رابطه با الگوریتم تشخیص صحت پرانتزگذاری هست
اما فکر می کنم ایراد داره این کد رو میزارم و در جایی که فکر می کنم اشکال داره رنگیش می کنم
valid=true;
s=the empty stack;
while(we have not read the entire string)
{
read the next symbol of the string;
if((symb=="(" ) || (symb=="[" ) || (symb=="{" ))
push(s,symb);
if((symb==")" ) || (symb=="]" ) || (symb=="}" ) )
if(empty(s))
valid=false;
else
I=pop(s);
if(i is not the matching operator of symb)
valid=false;
if (! empty(s))
valid=false;
if(valid)
print the string is valid;
else print the string is invalid
}
در رابطه با خطوط سبز رنگ
سوالم اینه که منظورش اینه که خودمون بر اساس برنامه نویسی خودمون اونجا رو پر کنیم چون این نوشته ها رو که سیستم نمیتونه اجرا کنه چون شرط های مفهوم داری نیست
در رابطه با خطوط قرمز
اینجا بیان کرده که اگر پشته ما خالی نبود از پشته یه عنصر بردار و بریز تو متغییر I حالا
بعدش اومده گفته اگر I عملگر نبود مقدار رو فالس کن اگر هم پشته خالی نبود باز متغییر valid رو فالس کن
اگر متغییر valid بود چاپ کن رشته معتبر است در غیر اینصورت رشته نامعتبر است
ممنون میشم راهنمایی کنید
مفهوم نیست