|
|||||||
Время создания: 10.08.2017 17:13
Раздел: Computer - Programming - C++ - Coursera White_Belt
|
|||||||
|
|||||||
В первой строке файла input.txt записаны два числа N и M. Далее в файле находится таблица из N строк и M столбцов, представленная в формате CSV (comma-separated values). Такой формат часто используется для текстового представления таблиц с данными: в файле несколько строк, значения из разных ячеек внутри строки отделены друг от друга запятыми. Ваша задача — вывести данные на экран в виде таблицы, размер ячейки которой равен 10, соседние ячейки отделены друг от друга пробелом. После последней ячейки пробела быть не должно. Гарантируется, что в таблице будет ровно N строк и M столбцов, значение каждой из ячеек — целое число. Пример ввода 2 3
1,2,3
4,5,6
Пример вывода 1 2 3
4 5 6
#include <iostream> #include <fstream> #include <iomanip> using namespace std; int main() { ifstream input("input.txt"); if(input) { int n, m; input >> n; input >> m;
int i = 0; int j = 0; while(i != n && j != m) { for(; i < n; ++i) { for(j = 0; j < m; ++j) { long long value; input >> value; input.ignore(1); cout << setw(10) << value; if(j < m-1) cout << " "; } if(i < n-1) cout << endl; } } } getchar(); return 0; } От авторов: #include <iostream> #include <fstream> #include <string> #include <iomanip> using namespace std; int main() { ifstream input("input.txt");
int n, m; input >> n >> m; // перебираем строки for (int i = 0; i < n; ++i) { // перебираем столбцы for (int j = 0; j < m; ++j) { // считываем очередное число int x; input >> x; // пропускаем следующий символ input.ignore(1); // выводим число в поле ширины 10 cout << setw(10) << x; // выводим пробел, если только этот столбец не последний if (j != m - 1) { cout << " "; } } // выводим перевод строки, если только эта строка не последняя if (i != n - 1) { cout << endl; } } return 0; } |
|||||||
Так же в этом разделе:
|
|||||||
![]() |
|||||||
|
|||||||
|