Поделитесь своими знаниями, ответьте на вопрос:
Обработка текстовой информации Контрольная работа 1.Текстовые документы и технологии их создания 2.Создание текстовых документов на компьютере 3.Форматирование текста 4.Визуализация информации в текстовых документах 5.Инструменты распознавания текстов и компьютерного перевода 6.Оценка количественных параметров текстовых документов
#include <iostream>
#include <vector>
#include <time.h>
using namespace std;
struct index_value {
int index;
int value;
};
vector<index_value> bubble_sort_fix(vector<index_value> vec) {
index_value temp;
for (size_t i = 0; i < vec.size()-1; i++)
{
for (size_t j = 0; j < vec.size() - i - 1; j++)
{
if (vec[j].value > vec[j + 1].value) {
temp.value = vec[j].value;
vec[j].value = vec[j + 1].value;
vec[j + 1].value = temp.value;
}
}
}
return vec;
}
vector<index_value> get_index_and_value_even_in_array(int* arr, int n) {
vector<index_value> vec_even_index_value;
index_value temp;
for (size_t i = 0; i < n; i++)
{
if (arr[i] % 2 == 0) {
temp.index = i;
temp.value = arr[i];
vec_even_index_value.push_back(temp);
}
}
return vec_even_index_value;
}
void print_array(int* arr, int n) {
for (size_t i = 0; i < n; i++)
{
cout << arr[i] << " ";
}
cout << endl;
}
int* push_in_array_even_vector(vector<index_value> vec, int* arr) {
int i = 0;
for (auto& elem : vec)
{
arr[elem.index] = elem.value;
}
return arr;
}
int* input_array_auto(int* arr, int n) {
for (size_t i = 0; i < n; i++)
{
arr[i] = rand() % 100 + 1;
}
return arr;
}
int* input_array(int* arr, int n) {
for (size_t i = 0; i < n; i++)
{
cin >> arr[i];
}
return arr;
}
void print_vector_index_value(vector<index_value> vec) {
for (auto& elem : vec)
{
cout << elem.index << " ";
cout << elem.value << endl;
}
cout << endl;
}
int main()
{
setlocale(LC_ALL, "Russian");
srand(time(NULL));
vector<index_value> vector_even;
int n;
cout << "Введите количество элементов: ";
cin >> n;
int* arr = new int[n];
arr = input_array_auto(arr, n);
print_array(arr, n);
vector_even = get_index_and_value_even_in_array(arr, n);
print_vector_index_value(vector_even);
vector_even = bubble_sort_fix(vector_even);
print_vector_index_value(vector_even);
arr = push_in_array_even_vector(vector_even, arr);
print_array(arr, n);
}