C++
Пожалуйста, помогите решить задачу
Создать текстовый файл F1 не менее чем из 10 строк и записать в него
информацию
Выполнить задание.
1) Скопировать из файла F1 в файл F2 все строки, оканчивающиеся на букву «А» и
расположены между строчками с номерами N1 и N2.
2) Определить номер той строки, в которой больше букв «А», файла F2.
Ответы
Ответ:
Объяснение:
#include <iostream>
#include <fstream>
using namespace std;
int main() {
// Создаём текстовый файл F1
ofstream fout("F1.txt");
fout << "Строка 1" << endl;
fout << "Строка 2" << endl;
fout << "Строка 3" << endl;
fout << "Строка 4" << endl;
fout << "Строка 5" << endl;
fout << "Строка 6" << endl;
fout << "Строка 7" << endl;
fout << "Строка 8" << endl;
fout << "Строка 9" << endl;
fout << "Строка 10" << endl;
fout.close();
// Объявляем переменные
int n1, n2, max_line, max_count;
string line;
// Считываем номера строк N1 и N2
cout << "Введите номер первой строки: ";
cin >> n1;
cout << "Введите номер второй строки: ";
cin >> n2;
// Открываем файлы F1 и F2
ifstream fin("F1.txt");
ofstream fout2("F2.txt");
// Копируем из файла F1 в файл F2 все строки, оканчивающиеся на букву «А» и
// расположенные между строчками с номерами N1 и N2
n = 1;
while (getline(fin, line)) {
if (n == n1) {
while (n != n2) {
if (line.endswith("а")) {
fout2 << line << endl;
}
n++;
getline(fin, line);
}
}
n++;
}
// Закрываем файлы F1 и F2
fin.close();
fout2.close();
// Определяем номер той строки, в которой больше букв «А», файла F2
max_count = 0;
max_line = 0;
fin.open("F2.txt");
while (getline(fin, line)) {
count = line.count("а");
if (count > max_count) {
max_count = count;
max_line = fin.tellg() - line.length();
}
}
fin.close();
// Выводим результат
cout << "Номер строки, в которой больше букв «А», файла F2: " << max_line << endl;
return 0;
}
#include
#include
int main() {
std::ifstream inputFile("F1.txt"); // Відкриття файлу для читання
std::ofstream outputFile("F2.txt"); // Відкриття файлу для запису
if (!inputFile.is_open() || !outputFile.is_open()) {
std::cerr