Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 09.12.2015
Сообщений: 25
1

Объяснить, что происходит в условии if в коде сортировки

16.12.2015, 20:22. Показов 270. Ответов 2
Метки нет (Все метки)

Здравствуйте. Нужна ваша помощь
Можете объяснить вторую строчку в коде.
C++
1
2
3
4
5
6
7
for (i = 0; i < n; i++)
        if (arr[i] != 0 && abs(arr[i] - 1) > abs(arr[i])) {
            int tmp = arr[i];
            for (int j = 0; j < i; j++)
                arr[i - j] = arr[i - j - 1];
            arr[0] = tmp;
        }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.12.2015, 20:22
Ответы с готовыми решениями:

Объяснить, что происходит в коде
что выполняется в строчке (p-&gt;d=x;) Node *first(laba x) Node *p; p=new Node; p-&gt;d=x;...

Объяснить, что происходит в коде
#include &lt;iostream&gt; #include &lt;Windows.h&gt; using namespace std; enum ConsoleColor { ...

Объяснить и подробно прокомментировать, что происходит в коде
Помогите написать комментарии к каждой строке кода,желательно чтоб было объяснение,что именно...

Объяснить, что происходит в коде (вложенные циклы)
Добрый день, вот моя программа, точнее взятая у кого-то и немного переделана, но всё равно не...

2
62 / 62 / 55
Регистрация: 18.10.2014
Сообщений: 190
16.12.2015, 20:29 2
C++
1
2
3
4
5
6
7
8
for (i = 0; i < n; i++)
        if (arr[i] != 0 && abs(arr[i] - 1) > abs(arr[i]))//тут проверка идет сначала если элемент массива не равен 0,следующая проверка (ИМХО мне кажется тут ошибка)так как текущий элемент массива -1 больше чем текущий элемент
 {
            int tmp = arr[i];
            for (int j = 0; j < i; j++)
                arr[i - j] = arr[i - j - 1];
            arr[0] = tmp;
        }
Но текущий элемент -1 всегда больше чем текущий элемент

Добавлено через 55 секунд
abs это модуль то есть только положительные числа .
1
8 / 8 / 7
Регистрация: 28.10.2014
Сообщений: 176
16.12.2015, 20:36 3
C++
1
abs(arr[i] - 1) > abs(arr[i])
это условие не выполнится ,если arr[i] положителен ,и выполнится если отрицателен .
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.12.2015, 20:36

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Объяснить и подробно прокомментировать, что происходит в коде (циклы и массивы)
const int n=10;int i, sum; int x; cout&lt;&lt;&quot;Vvedite elementi massiva:&quot;&lt;&lt;endl; for(i=0; i&lt;n;...

Объяснить и подробно прокомментировать, что происходит в коде (программа по поразрядным операциям)
помогите разобраться в программе вот задание (Первые 15 наиболее часто встречающихся символов...

Объяснить, что происходит в коде (приведение одного типа указателей к другому?)
char* a = &quot;Hell&quot;; int* b =(int*) a; cout &lt;&lt; *b; Как я понимаю в этом кусочке кода происходит...

Объяснить, что происходит в цикле
Что делает кусок кода, начиная с цикла while? for(i=0; environ != NULL; i++) // Выполнять цикл...

Объяснить, что происходит в заданном фрагменте кода
ifstream f(&quot;Базаданных.bd&quot;, ios::binary); f.read((char*)&amp;P,sizeof(P)); do { ...

Объяснить, что происходит в заданном фрагменте кода
В подпрограмме Всё предельно ясно кроме одной строки - P.year=y-'0'; Объясните недалёкому что...


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

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

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