Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.01.2014, 03:33   #1
*Fantom*
Пользователь
 
Регистрация: 28.05.2013
Сообщений: 32
По умолчанию обработка исключений try при работе с файлом

Ребят есть программа, в которой открывается 2 файла и я с ними что-то делаю. Нужно добавить обработку исключений try при открытии файла.
Код:
#include <iostream>
#include <fstream>
#define  size 5
#define m_size 6
using namespace std;
void main()
{
	int mas[5][6];
	int mas2[5][5];
	int mas3[5][5];
	int mas4[5][6];
	int index[2];
	setlocale(LC_ALL,"Russian");
	ifstream f("t.txt");
	if (!f) 
	{
		cout<<"Error"<<endl;
		system("pause");
		return;
	}
	if (f) 
	{
		cout<<endl<<endl<<endl;
	};
		for (int i=0; i<size; i++)
		for (int j=0; j<m_size; j++)
			f>>mas[i][j];
	f.close();

	cout<<"Матрица инцедентности:"<<endl;
	cout<<"    e1"<<"  e2"<<"  e3"<<"  e4"<<"  e5"<<"  e6"<<endl;

	for (int i=0; i<size; i++)
	{
		cout<<"V"<<i+1<<" | ";
		for (int j=0; j<m_size; j++)
			cout<<mas[i][j]<<" | ";
		cout<<endl;
	}
	int k,k1;
	bool fl;
	for (int i = 0; i<size; i++)
		for (int j = 0; j<size; j++)
			mas2[i][j] = 0;
	fl=true;
	for (int j=0; j<m_size; j++)
	{
		for (int i = 0; i<size; i++)
		{
			if ( mas[i][j] == 1 && fl)
			{
				k=i;
				fl=false;
				continue;
			}
						if ( mas[i][j] == 1 && !fl)
			{
				k1=i;
				fl=true;
				mas2[k][k1] += 1;
				mas2[k1][k] += 1;
				continue;
			}
					}
		
	}
	cout<<endl<<endl<<"Матрица смежности:"<<endl;
	cout<<"    V1  V2  V3  V4  V5"<<endl;
	for (int i=0; i<size; i++)
	{
		cout<<"V"<<i+1<<" | ";
		for (int j=0; j<size; j++)
			cout<<mas2[i][j]<<" | ";
		cout<<endl;
	}
	ifstream f2("t2.txt");
	if (!f2) 
	{
		cout<<"Error"<<endl;
		system("pause");
		return;
	}
	if (f2) 
	{
		cout<<endl<<endl;
	};
	for (int i=0; i<size; i++)
		for (int j=0; j<size; j++)
			f2>>mas3[i][j];
	f.close();
	cout<<endl<<endl<<endl<<"Матрица смежности:"<<endl;
	cout<<"    V1  V2  V3  V4  V5"<<endl;
	for (int i=0; i<size; i++)
	{
		cout<<"V"<<i+1<<" | ";
		for (int j=0; j<size; j++)
			cout<<mas3[i][j]<<" | ";
		cout<<endl;
	}
	int t=0;
	for (int i = 0; i<size; i++)
		for (int j = 0; j<m_size; j++)
			mas4[i][j] = 0;
	for (int i = 0; i<size;i++)
	{
		for (int j = 0; j<size; j++)
		{
			if (mas3[i][j]==1)
			{
				mas4[i][t] += 1;
				mas4[j][t] += -1;
				t++;
			}

		}
	}

	cout<<endl<<endl<<"Матрица инцедентности:"<<endl;

	for (int i=0; i<size; i++)
	{
		cout<<"V"<<i+1;
		for (int j=0; j<m_size; j++)
			cout<<"  "<<mas4[i][j]<<"  ";
		cout<<endl;
	}

	


	cout<<endl<<endl<<endl;
	system("pause");
	return;
}
Если нужно вот данные которые содержаться в 2 файлах:
Первый файл
1 0 0 0 0 0
0 1 1 0 0 0
0 0 0 1 0 0
1 1 0 0 1 1
0 0 1 1 1 1
Второй файл
0 0 0 1 0
0 0 0 0 1
0 0 0 0 0
0 1 0 0 1
0 0 1 1 0
*Fantom* вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка исключений с пoмощью структурированной обработки исключений Smart Visual C++ 3 01.11.2012 15:38
Обработка исключений при работе с БД VHomer БД в Delphi 0 02.03.2012 10:38
Проблема при работе с файлом beygul Помощь студентам 2 23.11.2011 16:25
ошибка при работе с файлом Juffin Общие вопросы Delphi 3 11.04.2009 21:37
Ошибка при работе с файлом LeoN Общие вопросы Delphi 1 07.12.2007 15:21