Форум программистов, компьютерный форум CyberForum.ru

Дерево отрезков, редактирование куска и поиск суммы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подключение библиотеки audiere C++ Code Blocks http://www.cyberforum.ru/cpp-beginners/thread906938.html
Скачала архив (приложила его). Распаковала. Что делать дальше? Куда и что надо распихать? Заранее спасибо.
C++ Написать программу с использованием функции cctype Программа, которая читает клавиатурный ввод до символа @ и повторяет его, за исключением десятичных цифр, преобразуя каждую букву верхнего регистра в букву нижнего регистра и наоборот. http://www.cyberforum.ru/cpp-beginners/thread906936.html
C++ В массиве y(20), сформированном случайным образом, найти среднее арифметическое модулей всех ненулевых элементов
вот задание: В массиве y(20), сформированном случайным образом, найти среднее арифметическое модулей всех ненулевых элементов. Заранее спасибо.
Замена указанного массива информации на массив информации C++
Написать программу производящую замену указанного массива информации с позиции A до позиции B в файле на массив информации находящийся в этом же файле c позиции A+C до позиции B+C.
C++ Переделать програму http://www.cyberforum.ru/cpp-beginners/thread906875.html
#include <iostream> using namespace std; char Bykvi(int i) { return static_cast<char>('a'-1+i); } void main() {
C++ Двухсторонняя очередь, relocate Привет, есть код. Знаю что в нем много косяков, не могу сам справиться. Нужно прицепить метод relocate, который будет сдвигать очередь к центру, если она ни с одной из сторон не заполнена#include <iostream> #include <cstdlib> #include <conio.h> #include <math.h> using namespace std; #define length 8 class dequeue { int s; int bottom, top; private: int g; подробнее

Показать сообщение отдельно
Olivеr
412 / 408 / 13
Регистрация: 06.10.2011
Сообщений: 831
19.06.2013, 20:36
я не смотрел ваш код, но решить данную задачу можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
#include <functional>
 
using namespace std;
 
int main()
{
    ifstream com("commands.txt");
    ofstream out("output.txt");
 
    if (!com.good() || !out.good()) return -1;
 
    int v_size;
    int com_count;
    com >> v_size >> com_count;
    vector<int> v(v_size, 0);
 
    while (com_count-- > 0) {
        char c;
        com >> c;
        int from, to;
        com >> from >> to;
 
        if (to < from) swap(to, from);
        --from;
        switch ( c ) {
            case 'A':
                int x;
                com >> x;
                fill_n( begin(v) + from, to - from, x );
                break;
 
            case 'Q':
                out << accumulate( begin(v) + from,
                                    begin(v) + to, 0,
                                    plus<int>() ) << endl;
                break;
            default:
                cerr << "Command not found" << endl;
                return -1;
        }
    }
 
    com.close();
    out.close();
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru