Форум программистов, компьютерный форум, киберфорум
Наши страницы

Транспонирование текстового документа - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строку в массив через контрольный сивол http://www.cyberforum.ru/cpp-beginners/thread154114.html
Здравствуйте, есть строка: std::string mystring = "first|second|third|raz|dva|tri"; какой функцией можно сделать так, чтобы эта строка перешла в массив таким образом: например, название массива...
C++ почему printf используют в С++ НАМНОГО реже чем cout? типа ООП, и пусть всё будет на классах? почему printf используют в С++ НАМНОГО реже чем cout? типа ООП, и пусть всё будет на классах? http://www.cyberforum.ru/cpp-beginners/thread154101.html
Об операторе присваивания C++
можно "перевести"?
Перевод числа в массив C++
Здравствуйте. У такой меня вопрос: могу ли я перевести n-значное число в массив из n элементов. Например 123 = {1, 2, 3}??? Мне нужно для решения задачи по длинной арифметике на срр. Или может...
C++ Найти букву в тексте, что встречается чаще других http://www.cyberforum.ru/cpp-beginners/thread154075.html
программа принемает строку, находит самую часто всречающуюся букву, и выводит слова в которых НЕТУ этой буквы. вернее она должна это делать. букву находит функция, и делает это правельно. но слова...
C++ Независимые ссылочные переменные В книге написано что от независимые ссылочные переменные толку так сказать 0 у переменной 2 имени хотя ето не так=) Есть толк от пример. #include <iostream> using namespace std; int main() {... подробнее

Показать сообщение отдельно
Kot Begemot
0 / 0 / 0
Регистрация: 01.12.2015

Транспонирование текстового документа - C++

17.07.2010, 00:46. Просмотров 518. Ответов 1
Метки (Все метки)

Здравствуйте.

Как можно наиболее адекватно транспонировать матрицу чисел из текстового документа?

Например, есть исходный текстовый документ:

1 2 3 4 5
55 89 45 7 0

Необходимо получить:

1 55
2 89
3 45
4 7
5 0

Двумерный массив, думаю, здесь не подойдет, т. к. количество этих чисел, вообще говоря, ничем не ограничено, т. е. необходимо считывать каждое число и располагать в выходном файле на нужном месте.

В принципе, на данный момент меня интересует только вариант, когда в документе только числа типа double, однако, в будущем планируется обобщение задачи на случай, когда вместо чисел будут данные произвольного типа.

Вот за основу можно принять код, написанный мною (компилируется без ошибок):

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
int main()
{
    ifstream inp_file;
        inp_file.open("input.txt");
    ofstream out_file;
        out_file.open("output.txt");
    for (string s ; inp_file ; s.clear())
    {
        getline(inp_file, s);
        stringstream Io;
        Io << s;
        s.clear();
                    
        for ( ; Io >> s ; )
        {
            //необходимо переместить указатель в конец строки
            out_file<<s<<endl;
        };
        //необходимо поместить указатель в начало файла
    }
    out_file.close();
    inp_file.close();
    return 0;
}
Трудности начались там, где возникла необходимость управлять курсором для его установки в то место, куда необходимо вписать соответствующее число (помечено в комментариях). Поиск по интернету желаемых результатов не принес, если есть варианты решения, просьба сообщить. Или привести другой вариант кода, более оптимальный.

Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.