Загрузка...

Solve the problem in c++

Thread in Programming created by FalleY_inactive124088 Feb 9, 2018. 172 views

  1. FalleY_inactive124088
    FalleY_inactive124088 Topic starter Feb 9, 2018 Banned 23 Jun 6, 2017
    В долгу не останусь)
    На книжной полке Макса есть некоторые из семи романов Джоан Роулинг «Гарри Поттер» в переводе издательства Росмэн, которые в последнее время стали большим раритетом. Макс расстраивается, что его коллекция не полна, и решил либо докупить отсутствующие книги, либо продать имеющиеся.

    В интернете Макс нашёл цены, по которым можно купить или продать каждую из семи книг. Макс решил, что если общая стоимость тех книг, которых у него нет, превышает общую стоимость имеющихся книг, то он продаст имеющиеся книги, а иначе докупит недостающие.

    Помогите Максу определить, как поступить с книжной серией.
    Входные данные:
    Ввод содержит 7 строк, описывающих книги. Каждая из них содержит целые числа Pi и Xi (100 ≤ Pi ≤ 104, 0 ≤ Xi ≤ 1) — соответственно цену i-й части и признак её наличия у Макса (1 — есть, 0 — нет). Гарантируется, что у Макса имеется хотя бы одна книга и отсутствует хотя бы одна книга.
    Выходные данные:
    Выведите SELL, если Макс должен продать имеющиеся книги, или BUY, если Макс должен купить недостающие.
    Примеры:

    входные данные
    500 1
    450 1
    350 0
    499 1
    600 0
    700 0
    750 0
    выходные данные
    SELL

    входные данные
    300 1
    300 1
    400 0
    300 1
    300 1
    400 0
    400 0
    выходные данные
    BUY
     
  2. jeerdo
    jeerdo Feb 11, 2018 1 Dec 17, 2017
    Можно вот так
    Будет считывать данные с файла in.txt и выдавать ответ в консоль. Если есть вопросы, задавай.

    #include <stdio.h>
    #include <vector>
    #include <iostream>
    #include <fstream>


    using namespace std;

    int main()
    {
    ifstream inFile;
    vector<int> booksArr;

    inFile.open("in.txt");

    if (!inFile) {
    cout << "Unable to open file\n";
    exit(1);
    }

    float temp;
    while (inFile >> temp) // Read text data from file.
    {
    booksArr.push_back(temp);
    inFile >> temp;
    booksArr.push_back(temp);
    }

    int buy = 0, sell = 0;
    for (int i = 0; i < 14; i += 2)
    {
    if (booksArr.at(i + 1) == 0)
    sell += booksArr.at(i);
    else
    buy += booksArr.at(i);
    }

    printf("Input data:\n");
    for (int i = 0; i < 14; i+=2)
    {
    printf("%d %d\n",booksArr.at(i),booksArr.at(i+1));
    }

    if (buy >= sell)
    printf("BUY\n");
    else
    printf("SELL\n");

    return 0;
    }
     
Top
Loading...