CyberForum.ru - Форум программистов и сисадминов
Вернуться   Форум программистов и сисадминов > Форум программистов > Форум С/C++ > Форум С/С++ для начинающих



Ответ Создать новую тему
 
Старый 16.03.2010, 20:17   #1
PointsEqual
ниначмуроФ
 
Аватар для PointsEqual
 
Регистрация: 12.10.2009
Адрес: д. Казначеевка
Сообщений: 2,106
Рейтинг сообщений: 460
Репутация: 563
По умолчанию вывод в файл

Здрасти. У меня есть процедура
Код C++
1
ShowMatrix(DeliveryMatrix,max_row,max_col);
, которая выводит массив на экран. А как вывести его в файл?
Код C++
1
ofstream out(12.txt);
вот этот способ не работает
Код C++
1
out<<ShowMatrix(DeliveryMatrix,max_row,max_col); 
не работает
PointsEqual вне форума  
Похожие темы
количество минимальных элементов в целочисленной матрице. C++
Написать и протестировать функцию, подсчитывающую количество минимальных элементов в целочисленной матрице. Помогите кто чем может:) #include <math.h> #include<stdio.h> #define m 6 #define n 8.... количество минимальных элементов в целочисленной матрице.
C++ Нужно программу на Паскале переделать в программу на С++
Помогите, пожалуйста!!! У меня есть программа на Паскале , а нужно ее переписать, чтобы она была на С++ (windows консоль). Текст программы на Паскале: var i, i1, i2 ,N, z: integer; .... Нужно программу на Паскале переделать в программу на С++
По заданным значениям A[20], Y[20] вычислить C++
По заданным значениям A, Y вычислить помогите кто чем))):help: #include <math.h> #include <stdio.h> #include <stdlib.h> #include <conio.h> int main(). По заданным значениям A[20], Y[20] вычислить
C++ Написать программу, которая приблизительно рассчитывает значение ех
можите помочь новичку . Написать программу, которая приблизительно рассчитывает значение ех, используя формулу: ех=1 + х/1! + х2/2! + х3/3! … Добавлено через 53 минуты вот код , помогите.... Написать программу, которая приблизительно рассчитывает значение ех
написать 8-чный и 16-ный дамп C++
нам задали написать 8-ный и 16-ный дамп в С++ я просто очень плохо пока в этой теме разбираюсь, помогите плиз.... написать 8-чный и 16-ный дамп
Сервер для тестирования кодов на си++ C++
Не подскажете где можно запостить код: #include <iostream> #include <iomanip> #include <vector> typedef long long LL; LL base = 1000*1000*1000; std::vector <int> &operator *= (std::vector.... Сервер для тестирования кодов на си++
После регистрации реклама в сообщениях будет скрыта
Старый 16.03.2010, 20:24   #2
Genius Ignat
Форумчанин
 
Регистрация: 16.09.2009
Сообщений: 2,226
Рейтинг сообщений: 706
Репутация: 1168
По умолчанию Re: вывод в файл

Код C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
template<class Type>
long SaveMatrixD(const char *Path, Type **matrixbuf, int str, int stbl){
ofstream save(Path);
if(!save)return 1;       
if(save.is_open()){
for(int i=0;i<str;i++){
        for(int j=0;j<stbl;j++){
        save<<matrixbuf[i][j]<<' ';       
}
save<<'\n';    
}
save.close();        
}
return  0;
}
 
...

Последний раз редактировалось Genius Ignat; 16.03.2010 в 20:24. Причина: теги кода
Genius Ignat вне форума  
Старый 16.03.2010, 20:26  [ТС]   #3
PointsEqual
ниначмуроФ
 
Аватар для PointsEqual
 
Регистрация: 12.10.2009
Адрес: д. Казначеевка
Сообщений: 2,106
Рейтинг сообщений: 460
Репутация: 563
По умолчанию Re: вывод в файл

ага, значит в цикле, ясно
PointsEqual вне форума  
Старый 16.03.2010, 20:26   #4
Genius Ignat
Форумчанин
 
Регистрация: 16.09.2009
Сообщений: 2,226
Рейтинг сообщений: 706
Репутация: 1168
По умолчанию Re: вывод в файл

save<<'\n'; //можешь не писать иначе будешь возиться с загрузкой.
Genius Ignat вне форума  
Старый 16.03.2010, 20:40  [ТС]   #5
PointsEqual
ниначмуроФ
 
Аватар для PointsEqual
 
Регистрация: 12.10.2009
Адрес: д. Казначеевка
Сообщений: 2,106
Рейтинг сообщений: 460
Репутация: 563
По умолчанию Re: вывод в файл

или удобно но некрасиво, или неудобно но красиво)

без save<<'\n' в строку выводит
PointsEqual вне форума  
Старый 16.03.2010, 20:55   #6
Genius Ignat
Форумчанин
 
Регистрация: 16.09.2009
Сообщений: 2,226
Рейтинг сообщений: 706
Репутация: 1168
По умолчанию Re: вывод в файл

PointsEqual:
Может я ошибся насчёт '\n'.
Попробуй с '\n'
Попробуй загрузить в матрицу следующим образом.
Код C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
template<class Type>
long LoadMatrixD(const char *Path, Type **matrixbuf, int str, int stbl){
ifstream load(Path);
if(!load)return 1;       
if(load.is_open()){
for(int i=0;i<str;i++){
        for(int j=0;j<stbl;j++){
        char sb;
        load>>matrixbuf[i][j]>>sb;       
}
    
}
load.close();  //правка.       
}
return  0;
}
 

Последний раз редактировалось Genius Ignat; 16.03.2010 в 20:56. Причина: ошибка в коде
Genius Ignat вне форума  
Старый 16.03.2010, 20:57  [ТС]   #7
PointsEqual
ниначмуроФ
 
Аватар для PointsEqual
 
Регистрация: 12.10.2009
Адрес: д. Казначеевка
Сообщений: 2,106
Рейтинг сообщений: 460
Репутация: 563
По умолчанию Re: вывод в файл

Genius Ignat, спасибо, все и так работает
PointsEqual вне форума  
Старый 16.03.2010, 21:01   #8
Genius Ignat
Форумчанин
 
Регистрация: 16.09.2009
Сообщений: 2,226
Рейтинг сообщений: 706
Репутация: 1168
По умолчанию Re: вывод в файл

Значит ошибся. приму к сведению.
Genius Ignat вне форума  
После регистрации реклама в сообщениях будет скрыта
Старый 16.03.2010, 21:26   #9
easybudda
Модератор
Эксперт C++
 
Аватар для easybudda
 
Регистрация: 25.07.2009
Адрес: Московская область
Сообщений: 6,379
Рейтинг сообщений: 3,097
Репутация: 6041
По умолчанию Re: вывод в файл

Код 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
#include <iostream>
#include <fstream>
        
template <typename T>   
std::ostream& ShowMatrix(std::ostream& ost, T **matr, size_t rows, size_t cols){
        for ( size_t i = 0; i < rows; i++ ){
                for ( size_t j = 0; j < cols; ++j )
                        ost << matr[i][j] << "  ";
                ost << '\n';
        }
        return ost;
}
 
int main(){
        const int rows = 5;
        const int cols = 4;
        int **matr = new int* [ rows ];
        for ( int i = 0; i < rows; ++i )
                matr[i] = new int [ cols ];
        for ( int i = 0; i < rows; ++i )
                for ( int j = 0; j < cols; ++j )
                        matr[i][j] = i + j;
        
        ShowMatrix(std::cout, matr, rows, cols);
        
        std::ofstream ofs("demo.txt");
        if ( !ofs.is_open() )
                return 1;
        ShowMatrix(ofs, matr, rows, cols);
        ofs.close();
        
        for ( int i = 0; i < rows; ++i )
                delete [] matr[i];
        delete [] matr;
        return 0;
}
 
easybudda вне форума  
Ответ Создать новую тему
Опции темы


Текущее время: 12:53. Часовой пояс GMT +4.

Powered by vBulletin® Version 3.8.7 PL2
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Техподдержка — DevArt.Pro
Рейтинг@Mail.ru