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

Определите элементы массива по возрастанию их модуля

12.02.2012, 17:44. Просмотров 432. Ответов 4
Метки нет (Все метки)

Определите элементы массива по возрастанию их модуля
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2012, 17:44
Ответы с готовыми решениями:

Отсортируйте элементы массива по возрастанию их модуля
Отсортируйте элементы массива по возрастанию их модуля

Определите, сколько обменов сделает алгоритм пузырьковой сортировки по возрастанию для данного массива
Определите, сколько обменов сделает алгоритм пузырьковой сортировки по...

Найти сумму отрицательных элементов массива и порядочить элементы массива по возрастанию
Помогите написать программу, работающую с одномерным вещественным массивом. -...

Элементы массива по возрастанию
И опять здравствуйте! За эту неделю уже 4 (или даже 5) раз обращаюсь за...

Определите все элементы первого массива, которых нет во втором
Даны два массива A(N) и B(M), где N<>M.Определите все элементы первого массива,...

4
Dani
1393 / 637 / 134
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
Завершенные тесты: 1
12.02.2012, 17:47 #2
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
#include <iostream>
#include <algorithm>
 
bool MM (int a, int b)
{
    return abs(a)<abs(b);
}
 
 
int main()
{
    int a[1000], n;
    std:: cin >> n;
 
    for (int i=0; i<n; ++i) 
        std:: cin >> a[i];
 
    std:: sort (a,a+n,MM);
 
    for (int i=0; i<n; ++i)
        std:: cout << a[i] << " ";
 
    std:: cout << "\n";
 
    system ("pause");
    return 0;
}
1
renald
35 / 35 / 8
Регистрация: 11.02.2012
Сообщений: 105
12.02.2012, 17:48 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <cstdlib>
 
using namespace std;
 
int compare (const void * a, const void * b) // функция для qsort
{
  return ( abs(*(int*)a) - abs(*(int*)b) );
}
 
int main () {
 
        int n=rand()%5+5;            //берем случайное кол-во элементов от 5 до 10 
    int a[n];                                       //массив
    
    for (int i=0; i<n; i++) a[i]=rand()%30-15; //заполнение случ. числами
        
        qsort (a, n, sizeof(int), compare); // спец функция из cstdlib
  
        for (int i=0; i<n; i++)
        cout << a[i] << "  ";  // вывод
    cout << endl;
}
1
alex_x_x
бжни
2455 / 1661 / 134
Регистрация: 14.05.2009
Сообщений: 7,162
12.02.2012, 18:11 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <iterator>
#include <algorithm>
#include <cmath>
#include <vector>
 
bool comp_abs (int val1, int val2) { return abs (val1) < abs (val2); }
 
int main()
{
   std::vector<int> v;
   std::copy (std::istream_iterator<int>(std::cin), std::istream_iterator<int>(), std::back_inserter(v));
   std::sort (v.begin(), v.end(), comp_abs);
   std::copy (v.begin(), v.end(), std::ostream_iterator<int>(std::cout, " "));
}
http://ideone.com/6gesf#view_edit_box
1
Infinity3000
1060 / 579 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
12.02.2012, 21:05 #5
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
#include "iostream"
#include "math.h"
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(0, "");
    double mas[100];
    int n;
    cout << "Введите количество элементов массива - ";
    cin >> n;
 
    cout << "Введите элементы массива - ";
    for(int i = 0; i < n; i++)
    {
        cin >> mas[i];
    }
    //с помощью пузырьковой сортировки упорядочиваем массив по убыванию элементов массива
    for(int i = 0; i < n; i++)
    {
       for(int j = n - 1; j > i; j--)
       {
          if (abs(mas[j-1]) > abs(mas[j]))  //если модуль предыдущего элемента меньше чем модуль теререшнего элемента, тогда....
           {
               //меняем местами элементы
              double x = mas[j-1]; 
              mas[j-1] = mas[j]; 
              mas[j] = x;
           }
       }
    }
    
    cout << "Упорядоченный массива по убыванию модулей элементов\n";
    for(int i = 0; i < n; i++) 
    {
        cout << mas[i] << " "; //выводим массив после сортировки
    }
    system("pause >> null");
    return 0;
}
0
12.02.2012, 21:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2012, 21:05

Упорядочить элементы массива по возрастанию
Есть программа #include &lt;iostream&gt; using namespace std; const int n =...

Отсортировать элементы массива по возрастанию
Задан массив из k чисел. Отсортировать элементы массива по возрастанию.

Отсортировать элементы массива по возрастанию
Здравствуйте,нужна программа на массиве одномерном. Задание: Задан массив из...


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

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

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