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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.04.2019, 00:22   #1
bylbyl9tor
Пользователь
 
Регистрация: 07.10.2018
Сообщений: 28
Стрелка C++ Чтение матрицы из файла

Помогите, хочу считать квадратную матрицу и вывести, но выводит полнейшую ахинею(мусор),что не так, 3ий час думаю уже, памираю
Код:
#include <iostream>
#include <fstream>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "ru");
    //Обьявление матрицы
	int arr[100][100]; int p = 0; string mas;
	char a[100];

    ///////////////////////////////
 
    string path = "C:\\Users\\User\\source\\repos\\pp4\\Debug\\input.txt";
    ifstream fin;
    fin.open(path);
    if (!fin.is_open())
    {
        cout << "Ошибка открытия файла!" << endl;
    }
	else {


		cout << "Файл открыт" << endl;
		int t = 0;
		while (!fin.eof()) {
			fin >> a;
			p++;
		}
		double **arr;
		arr = new double*[sqrt(p)];
		for (int i = 0; i < sqrt(p); i++) arr[i] = new double[sqrt(p)];

		//Считаем матрицу из файла
		for (int i = 0; i < sqrt(p); i++)
			for (int j = 0; j < sqrt(p); j++)
				fin >> arr[i][j];

		//Выведем матрицу
		for (int i = 0; i < sqrt(p); i++)
		{
			for (int j = 0; j < sqrt(p); j++)
				cout << arr[i][j] << "\t";
			cout << "\n";
		}
	}

 
    system("pause");
    return 0;
}
bylbyl9tor вне форума Ответить с цитированием
Старый 10.04.2019, 00:53   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,833
По умолчанию

Зачем две темы? Вам с одного раза не доходит? Надо в двух повторить?

Цитата:
Сообщение от bylbyl9tor Посмотреть сообщение
fin >> a;
Что это? Вы понимаете куда и сколько читаете?

Цитата:
Сообщение от bylbyl9tor Посмотреть сообщение
fin >> arr[i][j];
А смысл? Вы же уже прочитали весь файл ранее
Код:
while (!fin.eof()) {
p51x вне форума Ответить с цитированием
Старый 10.04.2019, 00:59   #3
bylbyl9tor
Пользователь
 
Регистрация: 07.10.2018
Сообщений: 28
По умолчанию

1)2темы, 2 разных кода
2)я уже ниф### не понимаю
bylbyl9tor вне форума Ответить с цитированием
Старый 14.04.2019, 01:17   #4
Desc
Участник клуба
 
Аватар для Desc
 
Регистрация: 21.11.2007
Сообщений: 1,063
По умолчанию

Вам ведь в Вашей-же теме:
http://programmersforum.ru/showthread.php?t=327937
сказали:
- Код рабочий.
Т.е. читается матрица из "input.txt" и выводится в косоли.
Проверте правильность указания маршрута к файлу.
И сам файл просили показать в теме.

А по этой теме - Вы объявляете два массива на 10000 и 100 символов:
Код:
 //Обьявление матрицы
	int arr[100][100]; int p = 0; string mas;
	char a[100];
и если я правильно понимаю, запихиваете 10000-ый массив в 100 символьный:
Код:
while (!fin.eof()) {
fin >> a;
p++
I am not a wizard, I am just learning.

Последний раз редактировалось Desc; 14.04.2019 в 18:26.
Desc вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C#. Чтение матрицы из .txt Sofi Kold Помощь студентам 1 30.01.2013 08:50
Чтение матрицы из файла Alina_Honey Паскаль, Turbo Pascal, PascalABC.NET 15 14.01.2013 22:11
Чтение матрицы из файла IlyaXXX C/C++ Базы данных 0 17.04.2012 22:09
Не получается чтение матрицы с файла.. Kroleg Помощь студентам 1 16.11.2011 00:57
Чтение матрицы по спирали AlexLAN Общие вопросы C/C++ 1 21.12.2008 07:50