Есть проблемы

Здравтсвуйте!
Вот где-то полмесяца назад я решила слепить свою мелкую забавку. Идея программы:
программа переворачивает вектор с числами(это я сделала самостоятельно), и если где-то в массиве выпадает комбинация чисел 45, то печатает «You win!»(а если нет, то ничего не делает). Продолбилась полмесяца над этим, думала про lexicographical_
compare(), и поняла, что оно для моей цели непригодно. Что сделать и на какой странице в стандарте это описывается?

Приложение «М» к стандарту С++03 ;)

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

const char *win_str = "You win!\n";
const char *lose_str = "You lose!\n";

bool is_winner(const vector<int>& v) {
    size_t size = v.size();
    for (size_t i = 0; i < size - 1; ++i)
        if (v[i] == 4 && v[i + 1] == 5)
            return true;
    return false;
}

int main()
{
    vector<int> v { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };

    cout << (is_winner(v) ? win_str : lose_str);

    reverse(v.begin(), v.end());
    cout << (is_winner(v) ? win_str : lose_str);
    reverse(v.begin(), v.end());
    cout << (is_winner(v) ? win_str : lose_str);
}

Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.

Ответить

Вы можете использовать разметку markdown для оформления комментариев и постов. Используйте функцию предпросмотра для проверки корректности разметки.

Пожалуйста, оформляйте исходный код в соответствии с правилами разметки. Для того, чтобы вставить код в комментарий, скопируйте его в текстовое поле ниже, после чего выделите то, что скопировали и нажмите кнопку «код» в панели инструментов. Иначе ваш код может принять нечитаемый вид.

Либо производите оформление кода вручную, следующим образом:

``` #include <iostream> using namespace std; int main() { // ... } ```

Предпросмотр сообщения

Ваше сообщение пусто.