Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Напишите программу, которая находит минимальное и максимальное среди чётных положительных чисел

Недостаточно памяти Мастер (1049), на голосовании 4 месяца назад
Напишите программу, которая находит минимальное и максимальное среди чётных положительных чисел, записанных в файле, и выводит результат в другой файл. Учтите, что таких чисел может вообще не быть код на С++. Очень желательно с объяснением что куда
Дополнен 5 месяцев назад
да зачем мне код от ии
Голосование за лучший ответ
Татьяна Просветленный (36384) 5 месяцев назад
 #include  
#include
#include
#include

int main() {
std::ifstream inputFile("input.txt");
if (!inputFile.is_open()) {
std::cerr << "Error opening input file!" << std::endl;
return 1;
}

std::vector numbers;
int number;

// Считываем числа из файла
while (inputFile >> number) {
numbers.push_back(number);
}

inputFile.close();

int minEven = std::numeric_limits::max();
int maxEven = std::numeric_limits::min();
bool foundEven = false;

// Ищем минимальное и максимальное четное положительное число
for (int num : numbers) {
if (num > 0 && num % 2 == 0) {
foundEven = true;
if (num < minEven) {
minEven = num;
}
if (num > maxEven) {
maxEven = num;
}
}
}

std::ofstream outputFile("output.txt");
if (!outputFile.is_open()) {
std::cerr << "Error opening output file!" << std::endl;
return 1;
}

if (foundEven) {
outputFile << "Minimum even positive number: " << minEven << std::endl;
outputFile << "Maximum even positive number: " << maxEven << std::endl;
} else {
outputFile << "No even positive numbers found." << std::endl;
}

outputFile.close();

return 0;
}
ТатьянаПросветленный (36384) 5 месяцев назад
код полностью рабочий и не каких в нем нет проблем, а если полный 0 в этом значит ты заслужил и самый потешный комик сразу видно.
Татьяна, ему другие имена файлов нужны. Вообще, твой дебильный ИИ любит играть в угадайку требований заказчика, а в программировании на заказ это категорически запрещено.
Инспектор Жопидý Оракул (86402) 5 месяцев назад
#include <iostream>
#include <fstream>
#include <limits>

using namespace std;

int main() {
ifstream inputFile("input.txt"); // Открываем файл для чтения
ofstream outputFile("output.txt"); // Открываем файл для записи

if (! inputFile.is _open() || ! outputFile.is _open()) {
cerr << "Ошибка открытия файла!" << endl;
return 1;
}

int number;
int minEven = numeric_limits<int>::max(); // Инициализируем минимальное четное максимальным значением int
int maxEven = numeric_limits<int>::min(); // Инициализируем максимальное четное минимальным значением int
bool foundEven = false; // Флаг, указывающий, были ли найдены четные числа

while (inputFile >> number) {
if (number > 0 && number % 2 == 0) {
foundEven = true;
if (number < minEven) {
minEven = number;
}
if (number > maxEven) {
maxEven = number;
}
}
}

if (foundEven) {
outputFile << "Минимальное четное число: " << minEven << endl;
outputFile << "Максимальное четное число: " << maxEven << endl;
} else {
outputFile << "В файле нет четных положительных чисел" << endl;
}

inputFile.close();
outputFile.close();

return 0;
}

Объяснение кода:
1. Включение заголовочных файлов:
o iostream: для использования cin, cout и cerr (ввод-вывод).
o fstream: для работы с файлами (ifstream для чтения, ofstream для записи).
o limits: для использования numeric_limits, чтобы инициализировать переменные минимальным и максимальным значениями типа int.
2. Открытие файлов:
o ifstream inputFile("input.txt");: открывает файл "input.txt" для чтения.
o ofstream outputFile("output.txt");: открывает файл "output.txt" для записи.
3. Проверка на успешное открытие файлов:
o Используем ! inputFile.is _open() и ! outputFile.is _open(), чтобы проверить, удалось ли открыть файлы.
o Если произошла ошибка, выводим сообщение об ошибке в cerr (стандартный поток вывода ошибок) и завершаем программу с кодом ошибки 1.
4. Инициализация переменных:
o number: переменная для хранения текущего числа, считанного из файла.
o minEven: инициализируется максимальным значением int, чтобы гарантировать, что первое четное число, считанное из файла, будет меньше.
o maxEven: инициализируется минимальным значением int по аналогии с minEven.
o foundEven: флаг, установленный в false, будет изменен на true, как только будет найдено первое четное положительное число.
Недостаточно памятиМастер (1049) 5 месяцев назад
нейросеть написала точно такой же код. он не работает по поставленной задаче
Инспектор Жопидý Оракул (86402) Недостаточно памяти, берите напильник, Шукра!
Похожие вопросы