Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.09.2021
Сообщений: 98
1

Уменьшить в два раза значения элементов расположенных перед максимумом массива

30.10.2021, 18:23. Показов 539. Ответов 7

Author24 — интернет-сервис помощи студентам
объясните поэтапно, что происходит в этом коде
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
using namespace std;
int main()
{
    int i, k, m;
    int n; //
    while (1) { //??
        cout << "n = \b"; k = 0;
        cin >> n; //n?
        //float a = new float*[n]; 
        float* a = new float[n];
        m = -623;
 
        srand(time(NULL));
 
        for (i = 0; i < n; i++) {
            a[i] = rand() % 1132 - 622;
            if (a[i] >= m) {  
                m = a[i]; k = i;
            }
        }
 
        for (i = 0; i < n; i++) {
            cout << i + 1 << ") " << a[i] << "\n";
            //if(i < k) a[i] /= 2; 
            //cout << ' ' << a[i] << endl;
        }
        std::cout << "\n";
 
        for (i = 0; i < k; i++) {
            a[i] /= 2;
        }
 
        for (i = 0; i < n; i++) {
            cout << i + 1 << ") " << a[i] << "\n";
            //if(i < k) a[i] /= 2; 
            //cout << ' ' << a[i] << endl;
        }
 
        delete[] a;
    }
 
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.10.2021, 18:23
Ответы с готовыми решениями:

Объясните,пожалуйста,что происходит в этом куске программы?
Требуется динамическое выделение памяти под двухмерный массив с заполнением массива с клавиатуры. ...

Можете разъяснить что происходит в этом коде , если можно по каждой строчке
int main() { const int size = 6; int array, sum = 0; srand(time(NULL)); cout « &quot;Random...

Объясните что происходит в коде оконной процедуры
Здраствйуте! Пожалуйста не объясните что тут происходит? Просто это Шаблон, я хочу разработать...

Кто-нибудь объясните мне,что происходит в этом коде
«Мы запускали процесс симуляции четыре раза, и температура главного модуля постоянно отклонялась в...

7
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
30.10.2021, 19:34 2
этот код зацикливается. прежде чем комментировать нужно внести исправления. напишите условие задачи
0
0 / 0 / 0
Регистрация: 26.09.2021
Сообщений: 98
30.10.2021, 19:35  [ТС] 3
В вещественном массиве уменьшить в
два раза значения элементов
расположенных перед максимумом
массива. Преобразованный массив
вывести на экран.
-622 509
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
30.10.2021, 19:53 4
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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    srand((int)time(0));
    int n, A=-622, B=509, C, imax=0;
    cout << "n="; cin >> n; // ввод размера массива
    A*=10;
    C=10*(B-A+1);
 
      double *a = new double[n]; // объявление динамического массива
    
    for (int i = 0; i < n; i++)
    {
        a[i]=0.1*(rand()%C + A);
        if (a[i]>a[imax]) imax=i; // находим индекс максимального элемента
        cout << a[i] << " ";
    }
    cout << "\n";
    
    cout << "max=" << a[imax] << "\n"; 
    
    for (int i = 0; i < n; i++)
    {    
        if (i<imax) a[i]/=2.; // значения индекс которых меньше индекса max делим на 2 
        cout << a[i] << " ";
    }
    cout << "\n";    
    
    delete[]a; // освобождение памяти
system("pause");
return 0;
}
1
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,712
30.10.2021, 20:04 5
Цитата Сообщение от Yetty Посмотреть сообщение
C++
1
2
3
for (int i = 0; i < n; i++)
 { 
 if (i<imax) a[i]/=2.; // значения индекс которых меньше индекса max делим на 2
C++
1
2
3
for (int i = 0; i < imax; i++)
 { 
       a[i]/=2.; // значения индекс которых меньше индекса max делим на 2
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
30.10.2021, 20:08 6
zss, если посмотрите внимательнее, в цикле ещё находится вывод массива
0
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,712
30.10.2021, 20:10 7
Вывод лучше отделять от обработки.
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
30.10.2021, 20:18 8
Цитата Сообщение от zss Посмотреть сообщение
Вывод лучше отделять от обработки
позвольте с Вами не согласиться. чем лучше ? только увеличится время работы программы
0
30.10.2021, 20:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.10.2021, 20:18
Помогаю со студенческими работами здесь

Что происходит в этом коде?
def stableMatching(n, menPreferences, womenPreferences): men = list(range(n)) women =...

Объясните что происходит в коде
вот прям построчно #include &lt;features.h&gt; #undef __GLIBC_USE_DEPRECATED_SCANF #define...

Объясните, что происходит в коде
Прокомментируйте код. private bool checkARange(float a) { if (a &gt;= 0 &amp;&amp;...

Объясните что происходит в коде
Как это работает и связывается с mysql. &lt;?php $h='localhost'; ...

Объясните, что происходит в коде
Вот часть кода: class MyPanel extends JPanel { public MyPanel() { } ...

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

Объясните что происходит в данном коде?
расскажите что происходит в этом коде? *(unsigned int*)&amp;pack = GetCRC16(pack, 13); pack =...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru