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

Внешний файл - C++

Восстановить пароль Регистрация
 
tripleus
1 / 1 / 0
Регистрация: 22.12.2010
Сообщений: 29
14.01.2011, 09:09     Внешний файл #1
Нужно, чтобы:
1 программа:Брала числа из внешнего файла
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
    setlocale(LC_CTYPE,"Russian");
  int size;
 int* m;
cout<<"Введите количество чиел:";
   cin>>size;
 m=new int [size];
 
   int i, j ,tmp;
 
 for(i = 0 ; i < size ; i++ )
 { 
         cout<<"Введите число: "; 
         cin>>m[i]; 
 }
 
 for( i = 0 , j = 0 ; i < size ; i++ )
     if(m[i] > 0)
     {
        tmp =  m[i];
        m[i] = m[j];
        m[j] = tmp;
        j++;
     }
 
 
 for( i = 0 ; i < size ; i++ )cout<<m[i]<<' ';
 cout<<endl;
 
 
 _getch();
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
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <conio.h>
using namespace std;
 
void main()
{
setlocale(LC_CTYPE,"Russian");
int n=0, m=0, i=0, j=0;
cout<<"Введите кол-во строк:\n> ";
cin>>n;
cout<<"Введите кол-во столбцов:\n> ";
cin>>m;
double** matr = new double*[n];
for(i = 0; i < n; i++)
    matr[i] = new double[m];
cout<<"Введите матрицу:"<<endl;
for(i = 0; i < n; ++i)
    for(j = 0; j < m; j++)
        cin>>matr[i][j];
cout<<"\nМатрица"<<endl;
for(i = 0; i < n; i++)
{
    for(j = 0; j < m; j++)
        cout<<matr[i][j]<<"\t";
    cout<<endl;
}
int imax = 0, jmax = 0;
for(i = 0; i < n; i++)
    for(j = 0; j < m; j++)
        if(matr[i][j] > matr[imax][jmax])
        {
            imax = i;
            jmax = j;
        }
        cout<<"Максимальный элемент: =  "<<matr[imax][jmax]<<endl;
for(i = 0; i < n; i++)
    delete []matr[i];
delete []matr;
_getch();
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Josefina
 Аватар для Josefina
10 / 10 / 1
Регистрация: 27.09.2010
Сообщений: 32
14.01.2011, 10:09     Внешний файл #2
В заголовочном файле io.h находятся заголовки функций — open, creat, creatnew, creattmp, с помощью которых можно открыть или создать файлы в текстовом или двоичном режиме, синтаксис:

nf = open(*filename, access[,mode]);

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

* O_RDONLY — файл открывается только для чтения;
* O_WRONLY — файл открывается только для записи;
* O_RDWR — файл открывается для записи и чтения;
* O_APPEND — открывается существующий файл для пополнения имеющегося в нем набора данных (при открытии такого файла его указатель устанавливается вслед за последней существующей записью);
* O_CREAT — используется для создания нового или открытия существующего файла;
* O_TRUNC — позволяет удалить данные в существующем файле;
* O_BINARY — открываемый файл будет работать в двоичном режиме;
* O_TEXT — открываемый файл будет работать в текстовом режиме.

Необязательный третий аргумент может принимать одно из трех следующих значений — S_IREAD, S_IWRITE или S_IREAD|S_IWRITE. Он определяет направление обмена. Вообще говоря, текстовый или двоичный файл может быть открыт и без указания режима во втором параметре. Дело в том, что в файле io.h объявлена глобальная переменная _fmode, значением которой по умолчанию является константа O_TEXT. Она и оказывает влияние на тип открываемого файла, если признак O_TEXT или O_BINARY опущен при открытии или создании файла.

Функция creat создает новый или открывает существующий файл. В отличие от этого функция creatnew сообщает об ошибке при попытке создать уже существующий файл. Функция creattmp позволяет создать временный файл в указанном каталоге. Для временного файла система сама формирует уникальное имя и удаляет файл после его закрытия. Все три функции создают текстовый или двоичный файл в зависимости от значения глобальной переменной _fmode. Функции open и creat возвращают целочисленный номер открытого файла или выдают значение -1, если попытка открыть файл не удалась.
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
14.01.2011, 11:31     Внешний файл #3
Цитата Сообщение от Josefina
В заголовочном файле io.h
это нестандартный файл, его может не быть где-нибудь
там нужно ifstream
tripleus
1 / 1 / 0
Регистрация: 22.12.2010
Сообщений: 29
14.01.2011, 12:38  [ТС]     Внешний файл #4
Вроде так?
В файле file2.txt
1
2
-3
-56
32
2
Код
#include "stdafx.h"
#include <conio.h>
#include <stdio.h>
#include <iostream>
#include <fstream>
using namespace std; 
 
int _tmain()
{
	setlocale(LC_CTYPE,"Russian");
  
 int m;
ifstream in("file2.txt");        
              if(!in)
	{
		cout<<"Error! Not fail!!!";
		_getch();
		exit(1);
	}
			  in.close();
  for( i = 0 , j = 0 ; i < size ; i++ )
     if(m[i] > 0)
	 {
        tmp =  m[i];
        m[i] = m[j];
        m[j] = tmp;
        j++;
     }
 
 
 for( i = 0 ; i < size ; i++ )cout<<m[i]<<' ';
 cout<<endl;
 
 
 _getch();
}
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
15.01.2011, 05:15     Внешний файл #5
C++
1
2
3
4
5
6
7
    ifstream in("file2.txt");
 
    // проверить файл
 
    i = 0;
    while (i < 6 && in >> n)
        arr[i++] = n;
Yandex
Объявления
15.01.2011, 05:15     Внешний файл
Ответ Создать тему
Опции темы

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