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

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

Войти
Регистрация
Восстановить пароль
 
Кирилл_МОАиС
0 / 0 / 0
Регистрация: 04.03.2013
Сообщений: 2
#1

Бинарные файлы - C++

15.10.2013, 11:24. Просмотров 209. Ответов 0
Метки нет (Все метки)

В файле содержатся числа, сформировать из них матрицу 4х4, взяв первые 8 чисел сначала файла, а остальные - с конца файла. Посчитать произведение элементов на главной диагонали матрицы.

Вот код, но суть в том что сортировать массив нельзя, сказали прочитать файл с конца. Видимо нужно использовать fseek, но не знаю куда воткнуть) помогите пожалуйста)

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
74
75
76
77
78
79
#include <iostream.h>
#include <math.h>
#include <fstream.h>
#include <cstdio>
#include <windows.h>
#include <conio.h>
#include <iomanip.h>
#include <string>
 
int main ()
{
    SetConsoleCP (1251);
    SetConsoleOutputCP (1251);
    int array [16];
    int a = 0;   
    int control_array [4][4]; 
    srand ( (unsigned) time (NULL));
    
    // заполняем массив array числами
 
    cout << "Исходный одномерный массив:" << endl << endl;
    for ( int i = 0; i < 16; i++)
        { 
            array [i] = rand () % 10;
            cout << array [i] << ' ';               // вывод на экран
        }
 
    cout << endl<<endl;
 
//    Сортируем массив
//
//    int between;
//    int value = 8;
//    for ( int i = 15; i >= 12; i--)
//      { 
//          between = array [i];
//          array [i] = array [value];
//              array [value] = between;
//              value++;
//      }
//      
//      cout<<endl;
 
    // открываем файл для записи
    
    ofstream outstrm ("binary.bin", std::ios::binary);
    if ( outstrm.is_open())
        { 
            for ( int i = 0; i < 16; i++)                                       // выводим массив в файл поэлементно
                outstrm.write ((char *) & array [i], sizeof(int)); 
            outstrm.close();
        }
    
    //Читаем поэлементно и организовываем матрицу 4х4
 
    cout << "Полученный двухмерный массив:" << endl << endl;        
    {                                                                                             
        ifstream instrm ("binary.bin", std::ios::binary);                             
            for( int i = 0; i < 4; ++i)                                                  //Вот тут нужно как то организовать всё
                {
                    for ( int j = 0; (j < 4) && (instrm.read ((char *) & a, sizeof(int))); ++j)
                        {
                            control_array [i][j] = a;
                            cout <<setw(3)<< control_array [i][j];
                        }
                    cout << endl;
                }
     }
    
     /*Подсчитываем произведение элементов под главной диагональю...*/
    int multiplicate = 1;
    for (int i = 0; i < 4; ++i)
        {
                    multiplicate *= control_array [i][i];               
        }
  cout << endl << "Произведение элементов на главной диагонали равно: " << multiplicate;
 
    getch ();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 11:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Бинарные файлы (C++):

Бинарные файлы - C++
Всё началось с необходимости наличия программы, в которую вводишь число и она говорит есть ли такое в файле(мне кажется удобнее...

Бинарные файлы - C++
как в бинарном файле заменить 4, 8 и 10 байт

Бинарные файлы - C++
Есть 2 текстовых файла .В первом информации представлена в след виде:номер и ФИО,во втором номер Группы,и оценки по предметам.Так мне нужно...

Бинарные файлы - C++
В файле содержатся числа. Сформировать из них матрицу, содержащую пять элементов в строке. Лишние числа отбросить. Вывести на печать...

Бинарные файлы - C++
Нужна помощь Во время работы программы если взять много значений программа вылетает. Уже все перепробывал. не знаю что делать ...

бинарные файлы - C++
доброго времени суток. очень нужна помощь по нескоьким задачам. именно помощь, а не решение за меня) спасибо, если кто откликнется. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.10.2013, 11:24
Привет! Вот еще темы с ответами:

Бинарные файлы c++ - C++
Здравствуйте. Нужно в бинарный файл записать строку (нового стиля), единственное что известно, так это то, что в строке не более 16...

Бинарные файлы - C++
1.Записать в файл N действительных чисел a1, a2, …,an. Организовать новый файл , элементы которого вычисляются по формуле:...

Бинарные файлы - C++
Заполнить бинарный файл случайными числами. Найтим min значение (их может быть несколько) и заменить min значение нулями

С++ бинарные файлы - C++
Вот мой чудо-код, но он походу только *.txt файлы открывает, а мне нужно что бы и бинарные тоже. Прошу помощи!!! #include &quot;stdafx.h&quot; ...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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