Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Alena_S98
0 / 0 / 0
Регистрация: 16.04.2017
Сообщений: 6
1

Среди каждых десяти компонентов файла F1 найти максимум и минимум (сформировать из них файл F2)

11.05.2017, 20:31. Просмотров 735. Ответов 1
Метки нет (Все метки)

Заполнить случайными целыми числами файл F1,сформировать новый файл F2, при этом среди каждых десяти компонентов файла F1 найти максимум и минимум (сформировать из них файл F2).

Буду благодарна.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2017, 20:31
Ответы с готовыми решениями:

Найти минимум среди нечетных, и максимум - среди четных элементов массива
Помогите пожалуйста сделать так, чтобы эта программа брала min c нечетных, а max с четных...

Найти сумму Максимум(среди чётных)+Минимум(среди нечётных)
дана последовательность действительных чисел {a1,a2,...an}. Найти...

Среди чисел на четных местах найти максимум,а среди нечетных найти минимум
Текст полной задачи: С клавиатуры вводится произвольная последовательность целых чисел.Числа...

Матрица с fstream. Найти максимум среди отрицательных и минимум среди положительных элементов
Составить программу нахождения максимального элемента среди отрицательных чисел и минимального...

Вывести максимальные значения среди двумерного массива, и найти среди них минимум
#include <iostream> using namespace std; int main(){ int const n=3; int i,j,max1,max2,max3;...

1
Paraponera
9 / 9 / 7
Регистрация: 22.04.2015
Сообщений: 37
Завершенные тесты: 1
12.05.2017, 20:59 2
Лучший ответ Сообщение было отмечено Alena_S98 как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstdlib>
#include <ctime>
#include <vector>
 
// Синоним для типа std::vector<std::vector<int>>.
typedef std::vector<std::vector<int>> vec_type;
 
// Количество строк и столбцов.
const int SIZE_ROW = 5;
const int SIZE_COLUMNS = 10;
 
// Имена файлов.
const char* F1 = "file1.txt";
const char* F2 = "file2.txt";
 
// Прототипы функций.
vec_type gen_numbers(int row, int columns);
vec_type search_min_max(const vec_type& vec);
void write_file(const char* file, const vec_type& vec);
vec_type read_file(const char* file, int row, int columns);
 
 
int main()
{
    using std::srand;
    using std::time;
 
    srand(time(nullptr));
    
    // Запись в файл, сгенерированных, псевдослучайных чисел.
    write_file(F1, gen_numbers(SIZE_ROW, SIZE_COLUMNS));
 
    // Ввод данных с файла в vec_type.
    vec_type data = read_file(F1, SIZE_ROW, SIZE_COLUMNS);
 
    // Поиск min и max.
    vec_type min_max = search_min_max(data);
 
    // Запись в файл min и max.
    write_file(F2, min_max);
    return 0;
}
 
// Генерирует псевдослучайные числа в vec_type.
vec_type gen_numbers(int row, int columns)
{
    vec_type ret(row);
 
    for (auto i = ret.begin(); i != ret.end(); ++i)
    {
        for (size_t j = 0; j != columns; ++j)
            i->push_back(std::rand());
    }
    return ret;
}
 
// Поиск min и max в vec_type.
vec_type search_min_max(const vec_type & vec)
{
    vec_type ret;
 
    for (auto i = vec.begin(); i != vec.end(); ++i)
    {
        int min = *i->begin();
        int max = 0;
 
        for (auto j = i->begin(); j != i->end(); ++j)
        {
            min = std::min(min, *j);
            max = std::max(max, *j);
        }
 
        ret.push_back(std::vector<int>({min, max}));
    }
 
    return ret;
}
 
// Вывод данных в файл c vec_type.
void write_file(const char* file, const vec_type& vec)
{
    // Открыть файл.
    std::ofstream fout(file);
 
    // Проверить открыт ли файл.
    if (!fout.is_open())
    {
        std::cerr << "Can not open file " << file << std::endl;
        std::exit(1);
    }
 
    // Вывод данных в файл.
    for (auto i = vec.begin(); i != vec.end(); ++i)
    {
        for (auto j = i->begin(); j != i->end(); ++j)
        {
            fout << *j;
            if (j < i->end() - 1)
                fout << '\t';
            else
                fout << std::endl;
        }
    }
 
    // Закрыть файл.
    fout.close();
}
 
// Ввод данных с файла в vec_type.
vec_type read_file(const char * file, int row, int columns)
{
    vec_type ret(row);
 
    // Открыть файл.
    std::ifstream fin(file);
 
    // Проверить открыт ли файл.
    if (!fin.is_open())
    {
        std::cerr << "Can not open file " << file << std::endl;
        std::exit(1);
    }
 
    // Ввод данных с файла.
    for (auto i = ret.begin(); i != ret.end(); ++i)
    {
        int temp = 0;
 
        for (int j = 0; j < columns; ++j)
        {
            fin >> temp;
            i->push_back(temp);
        }
    }
 
    // Закрыть файл.
    fin.close();
    return ret;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2017, 20:59

Записать в новый файл наибольшее каждых пяти компонентов исходного файла
Дан файл F(создать его), компоненты которого-целые числа. Число их кратно 5. Записать в новый файл...

Найти максимум и минимум среди не выпавших чисел
Всем привет. Возник вопрос как найти максимум и минимум среди не выпавших чисел. using namespace...

Сформировать файл из чисел последовательности (–1)^k*0.3^k/(k + 1).Найти произведение компонентов файла
Сформировать файл из чисел последовательности (–1)^k*0.3^k/(k + 1).Найти произведение компонентов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru