Помогите с информатикой, язык C++ ДАЮ 60 БАЛЛОВ
Два разных задания:
1)В файлі test.in записано текст англійською мовою. Змініть регістр
алфавітних символів. (Приклад: “Hello, World!” стане “hELLO, wORLD!”).
Результат запишіть в test.out. Для роботи з файлами використовуйте
функції cstdio.
2)Написати програму, що створює копію файлу, який містить дійсні
числа, але спочатку ідуть додатні елементи, потім нульові, а в кінці
від‟ємні.
Ответы
Ответ:
1:
#include <cstdio>
#include <cctype>
int main() {
// Открываем файл test.in для чтения
FILE* fin = std::fopen("test.in", "r");
if (fin == nullptr) {
// Если файл не удалось открыть, выводим сообщение об ошибке и завершаем работу программы
std::printf("Error opening file test.in\n");
return 1;
}
// Открываем файл test.out для записи
FILE* fout = std::fopen("test.out", "w");
if (fout == nullptr) {
// Если файл не удалось открыть, выводим сообщение об ошибке и завершаем работу программы
std::printf("Error opening file test.out\n");
std::fclose(fin);
return 1;
}
// Пока не достигнут конец файла
while (true) {
// Читаем очередной символ из файла
int c = std::fgetc(fin);
if (c == EOF) {
// Если достигнут конец файла, завершаем цикл
break;
}
// Если символ является буквой, меняем регистр
if (std::isalpha(c)) {
c = std::tolower(c) ? std::toupper(c) : std::tolower(c);
}
// Записываем символ в выходной файл
std::fputc(c, fout);
} // Закрываем оба файла
std::fclose(fin);
std::fclose(fout);return 0;
}
2:
#include <iostream>
#include <fstream>
#include <vector>
int main() {
// Відкриваємо файл для читання
std::ifstream input("input.txt");
// Створюємо вектор для збереження даних з файлу
std::vector<double> data;
// Зчитуємо дані з файлу і записуємо їх у вектор
double value;
while (input >> value) {
data.push_back(value);
}
// Відкриваємо файл для запису
std::ofstream output("output.txt");
// Записуємо додатні елементи
for (double v : data) {
if (v > 0) {
output << v << ' ';
}
}
// Записуємо нульові елементи
for (double v : data) {
if (v == 0) {
output << v << ' ';
}
}
// Записуємо від‟ємні елементи
for (double v : data) {
if (v < 0) {
output << v << ' ';
}
}
return 0;
}
Объяснение: