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

Не получается считать информацию из файла в 2-х мерный массив (С++) - C++

Восстановить пароль Регистрация
 
KeR
0 / 0 / 0
Регистрация: 05.12.2009
Сообщений: 102
18.09.2011, 15:43     Не получается считать информацию из файла в 2-х мерный массив (С++) #1
Что-то не совсем праильно работает, да и подскажите как потом поменять местами столбики со строками соответственно (т.е. 1-я строка соответстует 1-у столбику и т.д.) и записать в другой файл
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
#include <stdlib.h>
#include <conio.h>
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int main()
{
char freetext[3][3];
ifstream free_text("Open.txt");
    for (int i=0; i<2; i++)
        {
    for (int j=0; j<2; j++)
        {
        free_text >> freetext[i][j];
}
}
        free_text.close();
    for (int i=0; i<2; i++)
        {
    for (int j=0; j<2; j++)
        {
    cout<<freetext[i][j]<<endl;
        }
        }
    system("PAUSE");
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
18.09.2011, 15:58     Не получается считать информацию из файла в 2-х мерный массив (С++) #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
#include <iostream>
#include <fstream>
#include <cstdlib>
 
int main()
{
    char freetext[3][3];
    std::ifstream free_text("Open.txt");
    for (int i = 0; i < 3; ++i)
    {
        for (int j = 0; j < 3; ++j)
        {
            free_text >> freetext[i][j];
        }
     }
     
     for (int i = 0; i < 3; ++i)
     {
         for (int j = 0; j < 3; ++j)
         {
               std::cout << freetext[j][i] << ' ';
         }
         std::cout << std::endl;
      }
      system("PAUSE");
      return 0;
}
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
18.09.2011, 16:01     Не получается считать информацию из файла в 2-х мерный массив (С++) #3
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
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <algorithm>
 
#define size 3
 
int main()
{
   int matrix[size][size];
   
   std::ifstream file("in_file.txt");
   
   if (file.fail())
   {
      std::cerr << "Bad file name or file doesn't exist" << std::endl;
      return EXIT_FAILURE;
   }
   
   for (unsigned int i = 0; i < size; ++i)
      for (unsigned int j = 0; j < size; ++j)
         file >> matrix[i][j];
         
   // меняем строки со столбцами;
   for (unsigned int i = 0; i < size; ++i)
      for (unsigned int j = 0; j < size; ++j)
         std::swap(matrix[i][j], matrix[j][i]);
         
   file.close();
   
   std::ofstream files("out_file.txt");
   
   if (files.fail())
   {
      std::cerr << "Bad file name or file doesn't exist" << std::endl;
      return EXIT_FAILURE;
   }
   
   for (unsigned int i = 0; i < size; ++i)
   {
      for (unsigned int j = 0; j < size; ++j)
         files << matrix[i][j] << " ";
      files << std::endl;
   }
         
   return EXIT_SUCCESS;
}
даже не компилил
KeR
0 / 0 / 0
Регистрация: 05.12.2009
Сообщений: 102
18.09.2011, 18:18  [ТС]     Не получается считать информацию из файла в 2-х мерный массив (С++) #4
Спасибо за помощь, получилось) Это еще не окончательная пригодность программы, так что если что, то надеюсь на вашу помощь)
KeR
0 / 0 / 0
Регистрация: 05.12.2009
Сообщений: 102
21.09.2011, 21:42  [ТС]     Не получается считать информацию из файла в 2-х мерный массив (С++) #5
А как сделать, что бы прога с русским языком ладила, покажите на коде sandye51, просто я с телефона и не имею возможности выставить свой код))
Rexer
 Аватар для Rexer
151 / 150 / 19
Регистрация: 10.10.2010
Сообщений: 691
21.09.2011, 21:45     Не получается считать информацию из файла в 2-х мерный массив (С++) #6
setlocale( LC_ALL,"Russian" ); или
setlocale( LC_ALL,"" );
Yandex
Объявления
21.09.2011, 21:45     Не получается считать информацию из файла в 2-х мерный массив (С++)
Ответ Создать тему
Опции темы

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