Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
MRX48
0 / 0 / 1
Регистрация: 24.04.2018
Сообщений: 3
1

Задача по массиву с вводом и выводом файл

24.04.2018, 13:26. Просмотров 258. Ответов 2

Есть задание, суть такова, что нужна программа, которая читает файл, в котором задан размер массива, после чего выводит его в окно и записывает в файл, помогите решить проблему. Плюс дополнительные задание, текст задания прилагается. На С++ давно не кодил, всё забылось, а листинг представлять именно на нём, заранее спасибо.

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
#include "stdafx.h"
#include <iostream>
#include "conio.h"
#include <fstream>
using namespace std;
 
int main()
{
    system("color e");
    setlocale(0, "Russian");
    float a[50][50], x[50], t;
    int k, m, n;
 
    
    cout << "\n\tЗдравствуйте, Вас приветствует программа решения ЛР №4!\n\tПожалуйста, следуейте вспомогательными подсказкам.\n\n\tДля продолжения нажмите ENTER...";
    _getch();
    system("cls");
    int key;
    cout << "\n\tДля загрузки данных из файла нажмите 1\n" << endl;
    cin >> key;
 
    if (key == 1)
    {
        char filename[80];
        cout << "\n\tВведите путь к сохраняемому файлу и укажите имя файла, \n\tнапример: С:/filename.txt\n   ";
        cin >> filename;
 
        ifstream Matrix(filename);
        if (Matrix)
        {
            Matrix >> n;
            m = n + 1;
            for (int i = 0; i < n; i++)
                for (int j = 0; j < m; j++)
                    Matrix >> a[i][j];
            system("cls");
            cout << "Результат чтения из файла:" << endl;
            cout << "\n";
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                {
                    printf("%6.2f\t", a[i][j]);
                }
                printf("\n");
            }
        }
        else
        {
            system("cls");
            system("color c");
            cout << " Указанного файла не существует! До свидания." << endl;
            _getch();
            exit(1);
 
        }
        system("pause");
        system("cls");
        system("color a");
        cout << "Спасибо за внимание!\n\tДля выхода нажмите любую клавишу..." << endl;
    }
    _getch();
}
0
Изображения
Тип файла: jpg 2GIqiK3u6L8.jpg (157.6 Кб, 6 просмотров)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2018, 13:26
Ответы с готовыми решениями:

Операции с матрицой и работа с вводом-выводом в файл
Здравствуйте. Дали несколько заданий на практике, одно из них следующее: Начиная с центра, обойти...

Управление вводом-выводом
Помогите решить задачу. Пусть два процесса осуществляют доступ к одному и тому же файлу, но один...

Трабл с вводом/выводом
Вот есть код: #include &lt;iostream&gt; #include &lt;fstream&gt; using namespace std; int main(){ ...

Таблица с вводом и выводом. Ошибки. C++
Доброго всем вечера! Делал вот такую таблицу с вводом и выводом из книжки обучения для C++...

Проблема с вводом-выводом из файлов
Только изучаю данную тематику, и нарвался на подобное - при попытке компилить, находит одну ошибку,...

2
MRX48
0 / 0 / 1
Регистрация: 24.04.2018
Сообщений: 3
26.04.2018, 12:09  [ТС] 2
Решение найдено!
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
#include "stdafx.h"
#include <iostream>
#include "conio.h"
#include <fstream>
using namespace std;
 
int main()
{
    system("color e");
    setlocale(0, "Russian");
    float a[50][50], x[50], t;
    int k=0, m, n;
    int  sum = 0;
 
    cout << "\n\tЗдравствуйте, Вас приветствует программа решения ЛР №4!\n\tПожалуйста, следуейте вспомогательными подсказкам.\n\n\tДля продолжения нажмите ENTER...";
    _getch();
    system("cls");
    int key;
    cout << "\n\tДля загрузки данных из файла нажмите 1\n" << endl;
    cin >> key;
 
    if (key == 1)
    {
        char filename[80],filename2[80],filename3[80];
        cout << "\n\tВведите путь к открываемому файлу и укажите имя файла, \n\tнапример: С:/filename.txt\n   ";
        cin >> filename;
        
        cout << "\n\tВведите путь для сохранения файла Filemas2, \n\tнапример: С:/filename2.txt\n   ";
        cin >> filename2;
        
        cout << "\n\tВведите путь для сохранения файла Filemas3, \n\tнапример: С:/filename3.txt\n   ";
        cin >> filename3;
        
 
        ifstream Matrix(filename);
        ofstream m2(filename2), m3(filename3);
        if (Matrix)
        {
            Matrix >> m;
            Matrix >> n;
            for (int i = 0; i < m; i++)
                for (int j = 0; j < n; j++)
                    Matrix >> a[i][j];
            system("cls");
            cout << "Результат чтения из файла:" << endl;
            cout << "\n";
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    printf("%6.2f\t", a[i][j]);
                    m2 << a[i][j] << "\t";
 
                }
                if (m > 1) 
                {
                    printf("\n");
                    m2 << "\n";
                }
            }
            cout << endl;
            
        }
        else
        {
            system("cls");
            system("color c");
            cout << " Указанного файла не существует! До свидания." << endl;
            _getch();
            exit(1);
 
        }
        if (m <= 1)
        {
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    printf("%6.2f\t", a[i][j]);
                    m3 << a[i][j] << "\t";
 
                }
            }
            cout << endl;
            m3 << "\n";
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    if (a[i][j] > 0) {
                        printf("%6.2f\t", a[i][j]);
                        m3 << a[i][j] << "\t";
                    }
 
                }
            }
        } else
         if (n <= 1)
        {
             for (int i = 0; i < m; i++)
                 for (int j = 0; j < n; j++)
                     if (a[i][j] > 0)
                     {
                         k++;
                         sum += a[i][j];
                     }
             t = sum / k;
             cout << k << "\n" << sum << "\n" << t << endl;
             m3 << k << "\n" << sum << "\n" << t << endl;
        }
        else
        {
            bool check=false;
            int num;
            cout << "Введите номер столбца\n";
            cin >> num;
            num -= 1;
            for (int i = 0; i < m; i++)
                if (a[i][num] == 0)check = true;
                else check = false;
                if (check)
                {
                    for (int i = 0; i < m; i++)
                    {
                        for (int j = 0; j < n; j++)
                        {
                            printf("%6.2f\t", a[i][j]);
                            m3 << a[i][j] << "\t";
 
                        }
                        if (m > 1)
                        {
                            printf("\n");
                            m3 << "\n";
                        }
                    }
                }
                else cout << "Нулевых значений не обнаружено\n";
 
        }
        system("pause");
        system("cls");
        system("color a");
        cout << "Спасибо за внимание!\n\tДля выхода нажмите любую клавишу..." << endl;
    }
    _getch();
}
0
MRX48
0 / 0 / 1
Регистрация: 24.04.2018
Сообщений: 3
26.04.2018, 12:16  [ТС] 3
Исходник кому нужны.
0
Вложения
Тип файла: rar Исходники.rar (10.45 Мб, 2 просмотров)
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2018, 12:16

Помощь с потоковым вводом-выводом.
Доброго времени суток. можно ли как-нибудь создать/открыть файл для чтения и добавления с помощью ...

Проблемы с вводом/выводом кирилицы в консоли
Прога осуществляет поиск строки по маске. как сделать чтобы программа принимала русские символы,...

Помогите разобраться с потоковым вводом/выводом в С++
как решить эти две задачи: 24.1 Для класса Т1, имеющего два целочисленных компонентных данных а и...


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

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

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