Top.Mail.Ru
Ответы

Программирование, нужно решить задачу на C++

Помогите пожалуйста решить задачку на плюсах:
Дан одномерный массив , все элементы кратные 10 заменить на 0. Все нечетные элементы увеличить в два раза, а четные уменьшить в 2 раза. Определить насколько максимальный элемент больше минимального.
Заранее огромное спасибо!!

По дате
По рейтингу
Аватар пользователя
Новичок

Зачем ты плюсы изучаешь если мы за тебя задачи решаем?

Аватар пользователя
Высший разум
1234567891011121314151617181920212223242526272829303132333435
 #include <algorithm> 
#include <array> 
#include <iomanip> 
#include <iostream> 
#include <random>

using namespace std; 
using array24_t = array<int, 24>;

void random_fill(array24_t& seq, int a, int b) { 
    if (a > b) swap(a, b); 
    uniform_int_distribution<> uid(a, b); 
    mt19937 gen{ random_device()() }; 
    for (auto& x : seq) x = uid(gen); 
}

void show(const array24_t& seq, const streamsize w) { 
    for (auto x : seq) cout << setw(w) << x; 
    cout.put('\n'); 
}

int main() { 
    array24_t seq{}; 
    constexpr streamsize w = 5; 
    random_fill(seq, -30, 30); 
    show(seq, w); 
    auto is_ten = [](int x) { return 0 == x % 10; }; 
    replace_if(begin(seq), end(seq), is_ten, 0); 
    auto twice_flip = [](int& x) { x = 0 != x % 2 ? x * 2 : x / 2; }; 
    for_each(begin(seq), end(seq), twice_flip); 
    show(seq, w); 
    auto [pmin, pmax] = minmax_element(begin(seq), end(seq)); 
    auto diff = *pmax - *pmin; 
    cout << *pmax << " - "<< *pmin << " = " << diff << endl; 
} 
Аватар пользователя
Искусственный Интеллект

#include <iostream>
#include <algorithm>
using namespace std;
int main(){
size_t n; cout<<"n: "; cin>>n; int *a=new int[n];
cout<<"Enter "<<n<<" numbers:\n";
generate(a,a+n,[](){int k; cin>>k; return k;});
for_each(a,a+n,[](int &i){if(!(i%10))i=0;});
for_each(a,a+n,[](int &i){if(i&1)i*=2; else i/=2;}); cout<<endl;
for_each(a,a+n,[](int i){cout<<i<<' ';}); cout<<endl;
cout<<"\nd="<<*max_element(a,a+n)-*min_element(a,a+n)<<endl;}

Аватар пользователя
Мыслитель

#include <iostream>

int main() {
const int SIZE = 10; // определяем размер массива
int arr[SIZE] = {20, 30, 40, 50, 60, 70, 80, 90, 100, 110}; // инициализируем массив

int min = arr[0]; // предполагаем, что первый элемент массива является минимальным
int max = arr[0]; // предполагаем, что первый элемент массива является максимальным

// проходим по элементам массива
for (int i = 0; i < SIZE; i++)
Нашел за две секунды.