Есть ответ 👍

Компьютер устройство ввода и вывода: устройство хранения: устройство обработки: напишите напишите напишите напишите напишите напишите напишите напишите

186
317
Посмотреть ответы 2

Ответы на вопрос:


Клавиатура ,монитор память процессор
kiss86gv
4,8(92 оценок)

#include <iostream>

#include <fstream>

#include <cstdlib>

#include <ctime>

#include <vector>

#include <algorithm>

using namespace std;

// Функція для генерації випадкових чисел та запису їх у файл

void generateRandomNumbers(const string& filename)

{

ofstream file(filename, ios::binary);

if (!file)

{

cout << "Помилка при відкритті файлу." << endl;

return;

}

srand(static_cast<unsigned int>(time(nullptr)));

int count = rand() % 100 + 1; // Випадкова кількість чисел від 1 до 100

for (int i = 0; i < count; ++i)

{

int num = rand() % 201 - 100; // Випадкове число від -100 до 100

file.write(reinterpret_cast<const char*>(&num), sizeof(int));

}

file.close();

}

// Функція для підрахунку кількості чисел у файлі

int countNumbers(const string& filename)

{

ifstream file(filename, ios::binary);

if (!file)

{

cout << "Помилка при відкритті файлу." << endl;

return 0;

}

file.seekg(0, ios::end);

int fileSize = file.tellg(); // Розмір файлу в байтах

int numCount = fileSize / sizeof(int); // Кількість чисел

file.close();

return numCount;

}

// Функція для підрахунку суми чисел у файлі

int calculateSum(const string& filename)

{

ifstream file(filename, ios::binary);

if (!file)

{

cout << "Помилка при відкритті файлу." << endl;

return 0;

}

int sum = 0;

int num;

while (file.read(reinterpret_cast<char*>(&num), sizeof(int)))

{

sum += num;

}

file.close();

return sum;

}

// Функція для підрахунку середнього арифметичного чисел у файлі

double calculateAverage(const string& filename)

{

int count = countNumbers(filename);

int sum = calculateSum(filename);

if (count > 0)

{

return static_cast<double>(sum) / count;

}

return 0.0;

}

// Функція для виведення чисел більших за середнє арифметичне

void printNumbersAboveAverage(const string& filename)

{

double average = calculateAverage(filename);

ifstream file(filename, ios::binary);

if (!file)

{

cout << "Помилка при відкритті файлу." << endl;

return;

}

int num;

while (file.read(reinterpret_cast<char*>(&num), sizeof(int)))

{

if (num > average)

{

cout << num << " ";

}

}

file.close();

cout << endl;

}

// Функція для

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS