Ваш код имеет несколько ошибок. Основная ошибка заключается в том, что вы сравниваете переменную `a` с числом `1` вместо строки. Кроме того, вы помещаете `cout` после цикла, из-за чего он выводится после того, как цикл завершен. Вот исправленный вариант кода:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main()
{
string a;
do
{
cout << "why?" << endl;
cin >> a;
}
while(a != "because"
;
cout << "Got it!" << endl;
return 0;
}
```
Этот код будет повторять вопрос "why?", пока пользователь не введет "because". После этого программа завершится, выводя сообщение "Got it!".