Программу на с++ Даны натуральное число n, действительные числа а1, ... , аn. Преобразовать последовательность al, … , аn, расположив вначале отрицательные члены, а затем—неотрицательные. При этом: а) порядок как отрицательных, так и неотрицательных чисел сохраняется прежним; б) порядок отрицательных чисел изменяется на обратный, а порядок неотрицательных сохраняется прежним; в) порядок отрицательных чисел сохраняется прежним, а порядок неотрицательных изменяется на обратный; г) порядок тех и других чисел изменяется на обратный.
Вот пример программы на C++, которая реализует указанные преобразования последовательности:
#include <iostream> #include <vector> #include <algorithm> int main() { int n; std::cout << "Введите количество элементов в последовательности: "; std::cin >> n; std::vector<int> sequence(n); std::cout << "Введите элементы последовательности:\n"; for (int i = 0; i < n; i++) { std::cin >> sequence[i]; } std::vector<int> negative_nums; std::vector<int> non_negative_nums; for (int num : sequence) { if (num < 0) { negative_nums.push_back(num); } else { non_negative_nums.push_back(num); } } // Преобразование а) std::vector<int> result_a = negative_nums; result_a.insert(result_a.end(), non_negative_nums.begin(), non_negative_nums.end()); // Преобразование б) std::reverse(negative_nums.begin(), negative_nums.end()); std::vector<int> result_b = negative_nums; result_b.insert(result_b.end(), non_negative_nums.begin(), non_negative_nums.end()); // Преобразование в) std::reverse(non_negative_nums.begin(), non_negative_nums.end()); std::vector<int> result_c = negative_nums; result_c.insert(result_c.end(), non_negative_nums.begin(), non_negative_nums.end()); // Преобразование г) std::reverse(negative_nums.begin(), negative_nums.end()); std::reverse(non_negative_nums.begin(), non_negative_nums.end()); std::vector<int> result_d = negative_nums; result_d.insert(result_d.end(), non_negative_nums.begin(), non_negative_nums.end()); std::cout << "Преобразование а): "; for (int num : result_a) { std::cout << num << " "; } std::cout << std::endl; std::cout << "Преобразование б): "; for (int num : result_b) { std::cout << num << " "; } std::cout << std::endl; std::cout << "Преобразование в): "; for (int num : result_c) { std::cout << num << " "; } std::cout << std::endl; std::cout << "Преобразование г): "; for (int num : result_d) { std::cout << num << " "; } std::cout << std::endl; return 0; }
Вы можете скопировать этот код, скомпилировать и запустить его на вашем компьютере, чтобы увидеть результаты преобразования последовательности алгебраических чисел в соответствии с заданными условиями.
Вот пример программы на C++, которая реализует указанные преобразования последовательности:
#include <iostream>#include <vector>
#include <algorithm>
int main() {
int n;
std::cout << "Введите количество элементов в последовательности: ";
std::cin >> n;
std::vector<int> sequence(n);
std::cout << "Введите элементы последовательности:\n";
for (int i = 0; i < n; i++) {
std::cin >> sequence[i];
}
std::vector<int> negative_nums;
std::vector<int> non_negative_nums;
for (int num : sequence) {
if (num < 0) {
negative_nums.push_back(num);
} else {
non_negative_nums.push_back(num);
}
}
// Преобразование а)
std::vector<int> result_a = negative_nums;
result_a.insert(result_a.end(), non_negative_nums.begin(), non_negative_nums.end());
// Преобразование б)
std::reverse(negative_nums.begin(), negative_nums.end());
std::vector<int> result_b = negative_nums;
result_b.insert(result_b.end(), non_negative_nums.begin(), non_negative_nums.end());
// Преобразование в)
std::reverse(non_negative_nums.begin(), non_negative_nums.end());
std::vector<int> result_c = negative_nums;
result_c.insert(result_c.end(), non_negative_nums.begin(), non_negative_nums.end());
// Преобразование г)
std::reverse(negative_nums.begin(), negative_nums.end());
std::reverse(non_negative_nums.begin(), non_negative_nums.end());
std::vector<int> result_d = negative_nums;
result_d.insert(result_d.end(), non_negative_nums.begin(), non_negative_nums.end());
std::cout << "Преобразование а): ";
for (int num : result_a) {
std::cout << num << " ";
}
std::cout << std::endl;
std::cout << "Преобразование б): ";
for (int num : result_b) {
std::cout << num << " ";
}
std::cout << std::endl;
std::cout << "Преобразование в): ";
for (int num : result_c) {
std::cout << num << " ";
}
std::cout << std::endl;
std::cout << "Преобразование г): ";
for (int num : result_d) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
Вы можете скопировать этот код, скомпилировать и запустить его на вашем компьютере, чтобы увидеть результаты преобразования последовательности алгебраических чисел в соответствии с заданными условиями.