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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Gorpash
0 / 0 / 0
Регистрация: 26.03.2014
Сообщений: 50
#1

Записать по одному элементу числовую матрицу в бинарный файл - C++

20.05.2014, 20:38. Просмотров 298. Ответов 4
Метки нет (Все метки)

Помогите пожалуйста найти ошибку в коде
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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
FILE *p;
p=fopen("D:\\si\\file 3.3.bin","wb+");
int ch,ch1, masv[50][50];
if (p!=NULL)
{ printf("  Vvedit rozmir matrcu:\n");
  printf(" rozmir ch=");
  cin>>ch;
  printf(" rozmir ch1=");
  cin>>ch1;
  
   fwrite(&ch,sizeof(int),1,p);
   fwrite(&ch1,sizeof(int),1,p);
   
   for (int i=0; i<ch; i++)
   {
    for (int j=0; i<ch1; j++)
   {
       masv[i][j]=rand ()%15;
       printf("%4d", masv[i][j]);
       fwrite(&masv[i][j],sizeof(int),1,p);
   } 
   cout<<endl; 
   }
  }
   fclose(p);
   return 0;
  }
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2014, 20:38     Записать по одному элементу числовую матрицу в бинарный файл
Посмотрите здесь:

C++ Записать матрицу в бинарный файл и посчитать среднее арифметическое её членов
C++ Создать список с последовательным хранением и записать его в бинарный файл
Данные записать в файл F1.txt, затем прочитать оттуда, обрабатывались и записывались в бинарный файл F2.bin с проверкой C++
Создать бинарный файл f и записать в него целые числа C++
Данные из текстового файла записать в бинарный файл C++
C++ Записать массив структур в бинарный файл
Ребята есть ли метод vector <bool> записать в бинарный файл? C++
Из текстового файла считать матрицу и записать ее в бинарный файл C++
Как записать числовую матрицу в текстовый файл полностью? C++
C++ Как записать в бинарный файл структуры записи из текстового файла?
Записать информационную часть списка в бинарный файл, и прочитать его C++
C++ Заполнить массив структур сканеров и записать его в бинарный файл

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5415 / 4811 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
20.05.2014, 20:47     Записать по одному элементу числовую матрицу в бинарный файл #2
Цитата Сообщение от Gorpash Посмотреть сообщение
найти ошибку в коде
Что не так?
Gorpash
0 / 0 / 0
Регистрация: 26.03.2014
Сообщений: 50
20.05.2014, 21:12  [ТС]     Записать по одному элементу числовую матрицу в бинарный файл #3
На экран выбрасывает много значений (не формирует массив) выбрасывает из программы. Я уже незнаю что делать ..
alsav22
5415 / 4811 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
20.05.2014, 21:31     Записать по одному элементу числовую матрицу в бинарный файл #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
for (int i=0; i<ch; i++)
   {
       for (int j=0; j<ch1; j++) // !!! нужно j < ch1, а у вас i < ch1
       {
           masv[i][j]=rand ()%15;
           printf("%4d", masv[i][j]);
           fwrite(&masv[i][j],sizeof(int),1,p);
       } 
       cout<<endl; 
   }
Евгений Буланов
6 / 6 / 4
Регистрация: 23.10.2013
Сообщений: 63
21.05.2014, 00:36     Записать по одному элементу числовую матрицу в бинарный файл #5
нужно i < 50
и j < 50
у вас же определён размер матрицы, что вы там еще вводите?

Добавлено через 9 минут
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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
FILE *p;
p=fopen("D:\\si\\file 3.3.bin","wb+");
int ch,ch1;
 
if (p!=NULL)
{ printf("  Vvedit rozmir matrcu:\n");
  printf(" rozmir ch=");
  cin>>ch;
  printf(" rozmir ch1=");
  cin>>ch1;
 
  int ** masv = new int* [ch];   //вот матрица по заданным пользователем параметрам, не забудьте освободить память после использования
  for(int i(0); i < ch; ++i)
      masv[i] = new int[ch1];
  
   fwrite(&ch,sizeof(int),1,p);
   fwrite(&ch1,sizeof(int),1,p);
   
   for (int i=0; i<ch; i++)
   {
    for (int j=0; i<ch1; j++)
   {
       masv[i][j]=rand ()%15;
       printf("%4d", masv[i][j]);
       fwrite(&masv[i][j],sizeof(int),1,p);
   } 
   cout<<endl; 
   }
  }
   fclose(p);
   return 0;
  }
Yandex
Объявления
21.05.2014, 00:36     Записать по одному элементу числовую матрицу в бинарный файл
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru