pb/z13
This commit is contained in:
parent
aa13833071
commit
4d82d1d64f
3 changed files with 104 additions and 0 deletions
36
1sem/programming basics/z13/37.cpp
Normal file
36
1sem/programming basics/z13/37.cpp
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
// pb_z13_37.cpp
|
||||
// Горбацевич Андрей
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
#define MAX_STRING 500
|
||||
|
||||
using namespace std;
|
||||
|
||||
void join(const char *sep, istream &ist, ostream &ost);
|
||||
|
||||
int main() {
|
||||
ifstream inf("in.txt");
|
||||
ofstream fout("out.txt", ios::trunc);
|
||||
if (!inf.is_open() || !fout.is_open())
|
||||
{
|
||||
cerr << "Unable to open file" << endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
string sep;
|
||||
cout << "Enter separator >>>";
|
||||
getline(cin, sep, '\n');
|
||||
join(sep.c_str(), inf, fout);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void join(const char *sep, istream &ist, ostream &ost) {
|
||||
while (!ist.eof() && ist.good()) {
|
||||
char buf[MAX_STRING];
|
||||
ist >> buf;
|
||||
ost << buf;
|
||||
if (!ist.eof()) {
|
||||
ost << sep;
|
||||
}
|
||||
}
|
||||
}
|
||||
31
1sem/programming basics/z13/38.cpp
Normal file
31
1sem/programming basics/z13/38.cpp
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
// pb_z13_38.cpp
|
||||
// Горбацевич Андрей
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
void rev_lines(istream &ist, ostream &ost);
|
||||
|
||||
int main() {
|
||||
ifstream inf("in.txt");
|
||||
ofstream fout("out.txt", ios::trunc);
|
||||
if (!inf.is_open() || !fout.is_open())
|
||||
{
|
||||
cerr << "Unable to open file" << endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
rev_lines(inf, fout);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void rev_lines(istream &ist, ostream &ost) {
|
||||
string out;
|
||||
while (!ist.eof() && ist.good()) {
|
||||
string buf;
|
||||
getline(ist, buf);
|
||||
out.insert(0, buf + "\n");
|
||||
}
|
||||
ost << out.substr(0, out.size()-1);
|
||||
}
|
||||
37
1sem/programming basics/z13/39.cpp
Normal file
37
1sem/programming basics/z13/39.cpp
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
// pb_z13_39.cpp
|
||||
// Горбацевич Андрей
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
void wrap_text(istream &ist, ostream &ost, int max_line_len);
|
||||
|
||||
int main() {
|
||||
ifstream inf("in.txt");
|
||||
ofstream fout("out.txt", ios::trunc);
|
||||
if (!inf.is_open() || !fout.is_open())
|
||||
{
|
||||
cerr << "Unable to open file" << endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
int max_line_len = 0;
|
||||
cout << "Maximal line length >>>";
|
||||
cin >> max_line_len;
|
||||
wrap_text(inf, fout, max_line_len);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void wrap_text(istream &ist, ostream &ost, int max_line_len) {
|
||||
int cl = 0;
|
||||
char c;
|
||||
while ((c = ist.get()) && !ist.eof() && ist.good()) {
|
||||
if (cl >= max_line_len) {
|
||||
cl = 0;
|
||||
ost << endl;
|
||||
}
|
||||
ost << c;
|
||||
cl++;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue