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

Сформировать массив из элементов матрицы - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Простая задача? http://www.cyberforum.ru/cpp-beginners/thread344988.html
Здравствуйте! После участия в ДЛКШ я понял, что очень много не знаю даже о самых элементарных вещах в Си\Си++. Например, обыкновенная простая задача на теорию вероятностей - Цветные шары В урне находится n шаров, каждый из которых имеет один из k цветов, причём количество шаров каждого цвета, как и сам цвет, известно и написано на отдельной табличке. Дима, начавший изучать теорию...
C++ Компилятор не видит vector #include <vector> using std::vector; vector<double> v; выбивает ошибку вектор не стд, вектор не определён. подскажите плз почему так может быть Во-первых, по правилам форума один вопрос - одна тема. Во-вторых, ваш вопрос к той теме вообще отношения не имеет. http://www.cyberforum.ru/cpp-beginners/thread344985.html
C++ Какое утверждение верно?
1)ussing namespase std; нужно что бы писать cin<<" "; а не std::cin<<" "; 2)using namespace std; пишут если у тебя используется библиотека помоему <iostream> а не <iostream.h> Я спрашивал у людей что означает ussing namespase std вот два в верху написали вывода, какой из них верный? или верну оба скажите плиз
debug error C++
Здравствуйте, уважаемые программисты. Следующая проблема: после добавления блока if(round == 'g') и после запуска программы выдает ошибку: Run-time check failure #2 - stack around the variable 'team1' was corrupted В дебагере пробовал смотреть, все переменные присваиваются корректно, запись в файл производится, потом ошибка выскакивает
C++ В каждом идентификаторе с нечетным порядковым номером удвоить последнюю букву http://www.cyberforum.ru/cpp-beginners/thread344964.html
Задана последовательность идентификаторов, разделенных сериями пробелов. Последовательность задана строкой символов (string) заканчивается символом ‘*’. В каждом идентификаторе с нечетным порядковым номером удвоить последнюю букву.( решение задания этого есть все работает, мне интересен пример увидеть чтоб их текстового файла выводил всю инфорцацию на экран , причем чтоб по строчно , допустим...
C++ Извлечение данных из программы в игре Counter Strike 1.6 на deathrun сервере в чате бывают задания где надо произвести арифметические операции с 5 числами и в том же чате надо написать ответ плз напишите функции которые будут из чата числа считать или вводить в чат как ответ P.S. я WinAPI не знаю и учить не собираюсь Добавлено через 1 минуту кнопка чата y подробнее

Показать сообщение отдельно
4e87
4 / 4 / 1
Регистрация: 20.08.2011
Сообщений: 51
25.08.2011, 04:03     Сформировать массив из элементов матрицы
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <iostream>
#include <algorithm>
#include <functional>
#include <boost/multi_array.hpp>
#include <boost/random.hpp>
#include <boost/array.hpp>
#include <boost/bind.hpp>
#include <boost/function.hpp>
 
const int ROWS = 5;
const int COLS = 3;
 
boost::mt19937 rng;
boost::uniform_int <> range(0, 100);
boost::variate_generator <boost::mt19937, boost::uniform_int <> > gen(rng, range);
 
struct GenerateMatrix {
    int operator()() {
       return gen(); 
    }
};
 
typedef boost::multi_array <int, 2> Array2D;
 
 
struct GetArray {
    GetArray(Array2D::array_view <1>::type* _views, int _number) : views(_views), number(_number), index(-1) {  }
    int operator()() {
        this->index++;
        return std::count_if(this->views[this->index].begin(), this->views[this->index].end(), std::bind2nd(std::greater<int>(), this->number));
    }
 
private:
    Array2D::array_view <1>::type* views;
    int number, index;
};
 
int main() {
    typedef boost::multi_array_types::index_range range;
    Array2D matrix(boost::extents[ROWS][COLS]);
    boost::array <int, COLS> result_array;
    boost::multi_array_ref <int, 1> matrix_ref(matrix.data(), boost::extents[matrix.num_elements()]);
    int number = 60;
    
    std::generate(matrix_ref.begin(), matrix_ref.end(), GenerateMatrix());
    
    Array2D::array_view <1>::type views[COLS] = {
        matrix[boost::indices[range()][0]],
        matrix[boost::indices[range()][1]],
        matrix[boost::indices[range()][2]]
    };
 
    std::generate(result_array.begin(), result_array.end(), GetArray(views, number));
    
    std::cout << "Matrix: " << std::endl;
    for (std::size_t i = 0; i != matrix.size(); ++i) {
        std::copy(matrix[i].begin(), matrix[i].end(), std::ostream_iterator <int>(std::cout, "\t"));
        std::cout << '\n';
    }
    std::cout << "Final array: " << std::endl;
    std::copy(result_array.begin(), result_array.end(), std::ostream_iterator <int>(std::cout, "\t"));
    
    return 0;
}
какой-то зловещий код для такой задачи)
 
Текущее время: 15:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru