Sau khi e test thử với str="." nhưng nó ko kết thúc chương trình , mặt khác nếu có dòng enter trước đó thì nó sẽ thực hiện kết thúc chương trình . Mọi người cho e hỏi đây là lỗi gì ạ . Em cảm ơn xD
#include <iostream>
#include <stack>
#include <string>
using namespace std;
int main()
{
string str="";
while (true)
{
cin.ignore();
getline(cin,str);
string res="";
if (str==".")
return 0;
int l=str.length();
for (int i=0;i<l;i++)
{
if (str[i]=='(')
{
res+=str[i];
}
else if (str[i]=='[')
{
res+=str[i];
}
if(str[i]==')')
{
if (res[res.length()-1]=='(')
res.erase(res.length()-1,1);
}
else if (str[i]==']')
{
if (res[res.length()-1]=='[')
res.erase(res.length()-1,1);
}
}
if (res.length()==0)
cout << "yes" << endl;
else
cout << "no" << endl;
}
return 0;
}

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?