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

Запись двумерного массива в файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ OpenGL: Вывести значения двух функций http://www.cyberforum.ru/cpp-beginners/thread1497320.html
Пытаюсь разобраться с opengl , хотел вывести две функции , но выдает ошибку , подскажите как исправить. #include <iostream> #include<openGL/gl.h> #include<Glut/glut.h> void draw() { ...
C++ Работа с динамическими символьными массивами и строками переменной длины Здравствуйте! НЕ могу решить проблему из-за которой программа летит коту под хвост) Задача программы в том, чтобы по заранее заданным в поле номерам считать файлы с именами схожей конструкции:... http://www.cyberforum.ru/cpp-beginners/thread1497312.html
Что такое __pragma(warning()) ? C++
Вот код макроса: #define PTM_WARNING_DISABLE \ __pragma(warning( push )) \ __pragma(warning( disable : 4867 )) Что эти функции делают? И что это за функция __pragma? От ее определение нельзя...
Комбинаторика. Вывести все слова, которые можно составить из данных букв C++
Всем привет. Вобщем. Есть такая игра, в которой дают 4 картинки, которые можно описать одним словом, длину этого слова и набор букв из которых должно быть составленно слово. Задание: Вывести...
C++ Как исправить константу http://www.cyberforum.ru/cpp-beginners/thread1497281.html
int 0=n%100; как сделать что б програма полностью заработала?????????? #include<iostream> using namespace std; int main() { *cout <<" vvedite kolichestvo pirogkov: "; int n;
C++ Рост количества глобальных переменных при работе с временем Всем привет! Пишу GUI там мне для почти каждого спрайта нужен свой временной интервал срабатывания сам интервал реализую простейшим способом (другого более точного не знаю) "global" ... подробнее

Показать сообщение отдельно
kol
23 / 9 / 1
Регистрация: 30.01.2015
Сообщений: 175

Запись двумерного массива в файл - C++

11.07.2015, 19:26. Просмотров 574. Ответов 3
Метки (Все метки)

В общем нужно записать двумерный массив в фаил, но что то ни как не получается.

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
//magicQuad.h
#ifndef MAGICQUAD_H
#define MAGICQUAD_H
#include <iostream>
using std::cout;
using std::endl;
class magicQuad
{
private:
    // n = 4
    static const int SUM = 34; // sum = n(n^2+1)/2
    int a,b,c; // sum = 4a+6(b+c)
    int ** result;
 
    /*  result matrix
     *  a ------------- a + 3b + c ---- a + 3c ------- a + 3b + 2c
     *  a + b + 3c ---- a + 2b + 2c --- a + b -------- a + 2b +c
     *  a + 3b -------- a + c --------- a + 3b + 3c -- a + 2c
     *  a + 2b + 3c --- a + b + 2c ---- a + 2b ------- a + b + c
     */
public:
    magicQuad();
    void resultMatrix();
    void findQuad();
    ~magicQuad();
protected:
    void printQuad();
};
 
#endif // MAGICQUAD_H
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
65
66
67
68
69
70
71
72
73
//magicUqad.cpp
#include "magicquad.h"
 
magicQuad::magicQuad()
{
    a = 0;
    b = 0;
    c = 0;
 
    result = new int * [4];
    for(int i=0;i< 4;i++) result[i] = new int[4];
    resultMatrix();
}
 
void magicQuad::resultMatrix()
{
    result[0][0] = a;
    result[0][1] = a + 3*b + c;
    result[0][2] = a + 3*c;
    result[0][3] = a + 3*b + 2*c;
 
    result[1][0] = a + b + 3*c;
    result[1][1] = a + 2*b + 2*c;
    result[1][2] = a + b;
    result[1][3] = a + 2*b + c;
 
    result[2][0] = a + 3*b;
    result[2][1] = a + c;
    result[2][2] = a + 3*b + 3*c;
    result[2][3] = a + 2*c;
 
    result[3][0] = a + 2*b + 3*c;
    result[3][1] = a + b + 2*c;
    result[3][2] = a + 2*b;
    result[3][3] = a + b + c;
}
 
void magicQuad::findQuad()
{
    while(a != 16) // n = 4; n^2 = 16
    {
        a++;
        if((SUM - 4*a)%6 == 0) // SUM - 4*a = 6(b+c)
        {
            int temp = (SUM-4*a)/6;
            while(b<temp)
            {
                b++;
                c = temp - b;
                resultMatrix();
                printQuad();
                cout << endl;
            }
            b = 0;
            c = 0;
        }
    }
}
 
void magicQuad::printQuad()
{
    for(int i=0;i<4;i++)
    {
        for(int j =0;j<4;j++) cout << result[i][j] << "\t";
        cout << endl;
    }
}
 
magicQuad::~magicQuad()
{
    for(int i =0;i<4;i++) delete [] result[i];
    delete [] result;
}
Кликните здесь для просмотра всего текста

C++
1
2
3
4
5
6
7
8
9
10
11
12
//main.cpp
#include "magicquad.h"
#include <fstream>
 
 
int main()
{
    magicQuad any;
    any.findQuad();
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru