Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 52, средняя оценка - 4.81
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
#1

Упорядочить элементы массива по возрастанию модулей элементов - C++

27.02.2009, 20:34. Просмотров 7748. Ответов 31
Метки нет (Все метки)

В одномерном массиве, состоящем из n вещественных элементов. Упорядочить элементы массива по возрастанию модулей элементов.

Даже не имею малейшего представления с чего начать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2009, 20:34
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Упорядочить элементы массива по возрастанию модулей элементов (C++):

Упорядочить элементы массива по возрастанию модулей элементов - C++
В одномерном массиве,состоящем из N вещественных элементов,вычислить: 1)кол-во элементов массива,равных 0; 2)сумму элементов...

Упорядочить элементы одномерного массива по возрастанию модулей элементов - C++
Упорядочить элементы одномерного массива по возрастанию модулей элементов. если можно еще

В однородном массиве упорядочить элементы массива по возрастанию модулей элементов - C++
В однородном массиве, состоящем из n вещественных элементов, вычислить: - Упорядочить элементы массива по возрастанию модулей элементов; ...

Упорядочить элементы массива по убыванию модулей элементов - C++
в 1мерном массиве состоящем из n эл. вычислить: 1 колич эл массива лежащих от А до В 2 сумму эл массива расположенных после макс...

Упорядочить элементы одномерного массива по убыванию модулей элементов - C++
Упорядочить элементы одномерного массива по убыванию модулей элементов.

Упорядочить массив по возрастанию модулей элементов - C++
Помогите пожалуйста с этой задачей: упорядочить массив Х за возрастанием модулей. Заранее благодарен.

31
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
03.03.2009, 23:24 #16
Вот для примера
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
48
49
#include <iostream>
 
using namespace std;
 
int zero(int *arr,int len)
{
    int _sum = 0;
 
    for(int i = 0; i < len; ++i)
        if(!arr[i]) ++_sum;//if(arr[i] == 0) ++_sum;
 
    return _sum;
}
int find_min_index(int *arr, int len)
{
    int _min = arr[0];
    int _index   =  0;
 
    for(int i = 1; i < len; ++i)//!i = 1;
    {
        if(_min > arr[i])
        {
            _min = arr[i];
            _index   = i;
        }
    }
 
    return _index;
}
 
int sum(int *arr, int len)
{
    int _sum = 0;
 
    for(int i = find_min_index(arr,len) + 1; i < len; ++i)//+1 так как после min elem
        _sum += arr[i];
 
    return _sum;
}
 
int main()  
{  
    int arr[10] = {0,1,2,3,4,5,6,7,-1,9};
 
    cout<<zero(arr,10)<<endl
        <<sum(arr,10)<<endl;
 
    return 0;  
}
0
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
03.03.2009, 23:41  [ТС] #17
Это 4 функции?
0
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
03.03.2009, 23:48 #18
В прынципи да.
0
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
03.03.2009, 23:53  [ТС] #19
Это многовато будет, надо чтоб 1)-первая функция; 2)-вторая функция.
0
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
03.03.2009, 23:59 #20
Ну тогда так
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
#include <iostream>
 
using namespace std;
 
int zero(int *arr,int len)//первая
{
    int _sum = 0;
 
    for(int i = 0; i < len; ++i)
        if(!arr[i]) ++_sum;//if(arr[i] == 0) ++_sum;
 
    return _sum;
}
 
int sum(int *arr, int len)//вторая
{
    int _sum = 0;
 
    int _min = arr[0];
    int _index   =  0;
 
    for(int i = 1; i < len; ++i)//!i = 1;
    {
        if(_min > arr[i])
        {
            _min = arr[i];
            _index   = i;
        }
    }
 
    for(int i = _index + 1; i < len; ++i)//+1 так как после min elem
        _sum += arr[i];
 
    return _sum;
}
 
int main()//это главная ф. без неё ни как   
{  
    int arr[10] = {0,1,2,3,4,5,6,7,-1,9};
 
    cout<<zero(arr,10)<<endl
        <<sum(arr,10)<<endl;
 
    return 0;  
}
0
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
04.03.2009, 00:07  [ТС] #21
А можешь комментарий подробный для каждой строки написать? Спасибо.
0
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
04.03.2009, 00:21 #22
Нет, ты лучше скажи какие участки кода тебя смущают (просто лень все комментировать).
0
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
04.03.2009, 13:02  [ТС] #23
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
 
using namespace std;
 
int zero(int *arr,int len)//первая
{
    int _sum = 0;
 
    for(int i = 0; i < len; ++i) //Что такое len
        if(!arr[i]) ++_sum;//if(arr[i] == 0) ++_sum;// вот эта строчка не совсем понятна
 
    return _sum;// вот эта
}
 
 
}
0
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
04.03.2009, 13:11 #24
len - размер массива.
if(!arr[i]) ++_sum; - если i-й елемент массива равняется нулю, то _sum = _sum + 1;
return _sum; - вернет значение _sum;
0
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
04.03.2009, 23:39  [ТС] #25
Все равно как то сложно чето

Добавлено через 3 часа 6 минут 8 секунд
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
 
using namespace std;
 
int zero(int *arr,int len)//первая
    for(int i = 0; i < len; ++i) [COLOR="Red"]по условию у меня дан масси из n элементов.Должно ли len указано как число или все таки буквой?[/COLOR]
        if(!arr[i]) ++_sum;//if(arr[i] == 0) ++_sum;[COLOR="#ff0000"]- здесь не понятно (!arr[i]) для чего !
[/COLOR]
    return _sum; [COLOR="#ff0000"]для чего преднозначено return?
[/COLOR]
[/QUOTE]

Вот эти моменты не ясны. Можно как нибудь по подробнее объяснить, а то туп как пробка
0
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
04.03.2009, 23:58 #26
Цитата Сообщение от LuenFen Посмотреть сообщение
по условию у меня дан масси из n элементов.Должно ли len указано как число или все таки буквой?
это ф-ция и ей пофиг что там у тебя по словию(n,y,z,...без разници) тоесть
//~~~~~~~~~~~~~~~~~~~~
C++
1
2
3
4
5
6
7
int main()
{
    const int n = 10;//вместо n пиши что те угодно
    int arr[n] = {0,1,..,9};
    cout<<zero(arr,n)<<endl;//~
    return 0;
}
Цитата Сообщение от LuenFen Посмотреть сообщение
для чего преднозначено return?
для возврата значения из функции.

Добавлено через 3 минуты 29 секунд
Цитата Сообщение от LuenFen Посмотреть сообщение
(!arr[i]) для чего !
здесь поисходи проверка условия: если arr[i] == 0 то ... что-то делаем

Добавлено через 2 минуты 57 секунд
PS: зайди сюда и скачай себе пару книг...
0
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
04.03.2009, 23:59  [ТС] #27
Цитата Сообщение от ISergey Посмотреть сообщение
для возврата значения из функции.
Это я знаю, но я смысла не пойму. Где не читал толкам так и не в ник в суть этого оператора. Что подразумевается под "возврата значения функции"?
0
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
05.03.2009, 00:23 #28
Вам сначала нужно разобраться с термином функция.
Цитата Сообщение от Википедия
Фу́нкция — в программировании — один из видов подпрограммы. Особенность, отличающая её от другого вида подпрограмм — процедуры, состоит в том, что функция возвращает значение, а её вызов может использоваться в программе как выражение.

С точки зрения теории систем, функция в программировании — отдельная система (подсистема, подпрограмма), на вход которой поступают управляющие воздействия в виде значений аргументов. На выходе системы получаем результат выполнения программы, который может быть как скалярной величиной, так и векторным значением. По ходу выполнения функции могут выполняться также некоторые изменения в управляемой системе, причём как обратимые, так и необратимые.

В некоторых языках программирования (например, в Паскале) функции существуют наряду с процедурами (подпрограммами, не возвращающими значения), в других, например, в C, являются единственным реализованным видом подпрограммы (то есть все подпрограммы являются функциями и могут возвращать значение).

Побочным эффектом функции называется любое изменение функцией состояния программной среды, кроме возврата результата (изменение значений глобальных переменных, выделение и освобождение памяти, ввод-вывод и так далее). Теоретически наиболее правильным является использование функций, не имеющих побочного эффекта (то есть таких, в результате вызова которых возвращается вычисленное значение, и только), хотя на практике приходится использовать функции с побочным эффектом, хотя бы для обеспечения ввода-вывода и отображения результатов работы программы. Существует специфическая парадигма программирования — функциональное программирование, в которой любая программа представляет собой набор вложенных вызовов функций, не вызывающих побочных эффектов. Наиболее известный язык программирования, реализующий эту парадигму — Лисп. В нём любая операция, любая конструкция языка, любое выражение, кроме константы, являются вызовами функций.
0
LuenFen
3 / 3 / 0
Регистрация: 27.02.2009
Сообщений: 18
05.03.2009, 00:48  [ТС] #29
есть ли отличие между "i++" и "++i"?
0
ISergey
Maniac
Эксперт С++
1375 / 886 / 52
Регистрация: 02.01.2009
Сообщений: 2,661
Записей в блоге: 1
05.03.2009, 00:56 #30
Цитата Сообщение от LuenFen Посмотреть сообщение
есть ли отличие между "i++" и "++i"?
есть.
++i - прединкремент
i++ - постинкремент
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.03.2009, 00:56
Привет! Вот еще темы с ответами:

Упорядочить элементы строк матрицы по возрастанию, а сами строки по возрастанию суммы элементов - C++
Дана матрица Х. Упорядочить элементы строк матрицы по возрастанию, а сами строки по возрастанию суммы элементов строк (использовать...

Упорядочить элементы векторов по убыванию модулей элементов - C++
Задайте два вектора А(n) и B(m). выполните задания: 1)найдите вектора С(n+m) с элементов векторо А и Б, сначала парных в порядке...

Элементы массива по убыванию модулей упорядочить методом выбора! - C++
Дан целочисленный массив A(n) с элементами, сгенерированными случайными числами в диапазоне (-20, 20). Требуется: Упорядочить методом...

Упорядочить элементы массива по возрастанию - C++
Есть программа #include &lt;iostream&gt; using namespace std; const int n = 10; int main(int argc ,char *argv) { ...


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

Или воспользуйтесь поиском по форуму:
30
Yandex
Объявления
05.03.2009, 00:56
Ответ Создать тему
Опции темы

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