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

запись в файл! - C++

Восстановить пароль Регистрация
 
Skreen
0 / 0 / 0
Регистрация: 16.03.2011
Сообщений: 52
05.06.2012, 20:09     запись в файл! #1
не могу понять как, не получается сохранить результат,который выводится на экран (массив чисел), в файл.
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
#include "percolation.h"
#include <conio.h>
#include <stdio.h>
#include <ctype.h>
#include <malloc.h>
#include <stdlib.h>
#include <iostream>
 
using namespace std;
 
int main()
{
domain a(32,32);
int i, j, k, m, n;
FILE * f;
f = fopen("answer.txt","w");
m = a.get_size(1);
n = a.get_size(0);
for (i = 0; i <= m; i++){
for (j = 0; j <= n; j++){
        printf("%5i", a[i,j] );
        fprintf(f ,"%4d",a[i,j] );  
    k = (2*j - i + 1000)%3;
    if (k!=1) a.put(i,j,1);
    else a.put(i,j,0);
    
    }
a.outputs();
getch();
return 0;
}

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
#include <iostream>
using namespace std;
 
class domain {
     int m,n;
     int* dom;
public:
     domain(int mx, int my);
     ~domain();
     int get_size(int i){if (i > 0) return m;
                         else return n;}
     int get(int i, int j){return *(dom + (m + 1)*j + i);}
     void put(int i, int j, int num){*(dom + (m + 1)*j + i) = num;}
     void outputs();
};
 
// constructor
domain::domain(int mx, int my)
{
m = mx;
n = my;
dom = new int [(mx + 1)*(my + 1)];
}
 
domain::~domain()
{
delete [] dom;
}
 
void domain::outputs()
{
int i, j;
cout << " m = " << m << " n = " << n << " \n";
for (i=0; i <= m; i++ ){
for (j=0; j <= n; j++ ) cout << get(i, j) << ' ';
cout << "\n";
}
}


помогите подправить код
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2012, 20:09     запись в файл!
Посмотрите здесь:

C++ Запись в файл
запись в файл C++
C++ Запись в файл
Запись в файл C++
C++ Запись в файл
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Кот Ангенс
 Аватар для Кот Ангенс
317 / 267 / 37
Регистрация: 24.05.2012
Сообщений: 629
05.06.2012, 20:17     запись в файл! #2
Мне кажется, Вы забыли fclose.
Skreen
0 / 0 / 0
Регистрация: 16.03.2011
Сообщений: 52
05.06.2012, 20:20  [ТС]     запись в файл! #3
вот подправил,но все равно 1на ошибка и почему-то на #include "stdafx.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
#include "stdafx.h"
#include "percolation.h"
#include <conio.h>
#include <stdio.h>
#include <ctype.h>
#include <malloc.h>
#include <stdlib.h>
#include <iostream>
 
using namespace std;
 
int main()
{
domain a(32,32);
int i, j, k, m, n;
FILE * f;
f = fopen("answer.txt","w");
m = a.get_size(1);
n = a.get_size(0);
for (i = 0; i <= m; i++){
for (j = 0; j <= n; j++){
        printf("%5i", a[i,j] );
        fprintf(f ,"%4d",a[i,j] );  
    k = (2*j - i + 1000)%3;
    if (k!=1) a.put(i,j,1);
    else a.put(i,j,0);
    
    }
 
a.outputs();
getch();
fclose(f);
return 0;
}
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
05.06.2012, 20:24     запись в файл! #4
Удалите просто эту строку.
Skreen
0 / 0 / 0
Регистрация: 16.03.2011
Сообщений: 52
05.06.2012, 20:26  [ТС]     запись в файл! #5
было бы все так легко,пытаюсь со вчерашнего вечера,если её убрать то в 22 и 23 строчке ошибки на " [ ",так что я хз что уже тут не так....
BF_KARATEL
 Аватар для BF_KARATEL
11 / 11 / 0
Регистрация: 01.06.2012
Сообщений: 114
05.06.2012, 20:29     запись в файл! #6
может fwrite добавить
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
05.06.2012, 20:40     запись в файл! #7
Цитата Сообщение от Skreen Посмотреть сообщение
a[i,j]
Кто ж Вас учил так писать?
Skreen
0 / 0 / 0
Регистрация: 16.03.2011
Сообщений: 52
05.06.2012, 20:43  [ТС]     запись в файл! #8
Цитата Сообщение от Toshkarik Посмотреть сообщение
Кто ж Вас учил так писать?


я просто спросил у товарища и мне сказали что так...а как надо???мне надо чтобы была запись как в матрице
AnDrew_LP
160 / 162 / 9
Регистрация: 29.05.2010
Сообщений: 435
05.06.2012, 21:23     запись в файл! #9
А есть перегрузка оператора []?

Вообще, к элементу двумерного массива обращаются так
C++
1
a[i][j]
Но в этом случае ошибка не в этом.Вам нужно использовать методы get и put.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2012, 21:28     запись в файл!
Еще ссылки по теме:

Запись в файл C++
запись в файл C++
Запись в файл C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Skreen
0 / 0 / 0
Регистрация: 16.03.2011
Сообщений: 52
05.06.2012, 21:28  [ТС]     запись в файл! #10
последний код выдает 7 ошибок
Yandex
Объявления
05.06.2012, 21:28     запись в файл!
Ответ Создать тему
Опции темы

Текущее время: 04:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru