Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.94/17: Рейтинг темы: голосов - 17, средняя оценка - 4.94
kypiwindy
372 / 286 / 226
Регистрация: 29.05.2010
Сообщений: 727
Записей в блоге: 1
Завершенные тесты: 3
1

Заполнить массив случайными числами по возрастанию и убыванию

22.09.2010, 18:46. Просмотров 3093. Ответов 9
Метки нет (Все метки)

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

Заполнить массив размером 10 случайными числами от 0 до 10, отсортировать его по убыванию
Заполнить массив размером 10 случайными числами от 0 до 10, отсортировать его...

Заполнить массив размером 10 случайными числами от 0 до 10, отсортировать его по возрастанию
Есть такое задание: Заполнить массив размером 10 случайными числами от 0 до 10,...

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

STL Заполнить массив размером 10 случайными числами от 0 до 10, отсортировать его по убыванию и вывести
Заполнить массив размером 10 случайными числами от 0 до 10, отсортировать его...

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

9
asics
Freelance
Эксперт С++
2854 / 1789 / 355
Регистрация: 09.09.2010
Сообщений: 3,841
22.09.2010, 19:10 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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include<iostream>
#include<conio.h>
#include<ctime>
using namespace std;
int main()
{
        const int n = 10;
        int m[n]; 
        srand(time(0));
        cout << "Do" << endl;
        for(int i = 0; i < n; i ++)
        {
             m[i] = rand()%700;
             cout << m[i] << ",";   
        }
        for(int i = n - 1; i >= 1; i--)
          for(int j = 0; j < i; j++)
          {
                  
                  if(m[j] > m[j+1])
                  {
                  int foo = m[j];
                  m[j] = m[j+1];
                  m[j+1] = foo;
                  }
          }
        cout << endl;
        cout << "After(>)" << endl;
        for(int i = 0; i < n; i++)
        cout << m[i] << ",";
        for(int i = n - 1; i >= 1; i--)
          for(int j = 0; j < i; j++)
          {
                  
                  if(m[j] < m[j+1])
                  {
                  int foo = m[j];
                  m[j] = m[j+1];
                  m[j+1] = foo;
                  }
          }
        cout << endl;
        cout << "After(<)" << endl;
        for(int i = 0; i < n; i++)
        cout << m[i] << ",";
        getch();
        return 0;
}
0
gooseim
Эксперт С++
511 / 415 / 92
Регистрация: 23.09.2010
Сообщений: 1,159
23.09.2010, 01:40 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <iterator>
#include <functional>
 
int main(int argc, char* argv[])
{
    int arr[10];
    for(size_t i=0;i<sizeof(arr)/sizeof(int);i++)
        arr[i]=std::rand()%700;
    std::sort(arr, arr+sizeof(arr)/sizeof(int));
    std::copy(arr, arr+sizeof(arr)/sizeof(int), std::ostream_iterator<int>(std::cout, "\t"));
    std::cout<<"--------"<<std::endl;
    std::sort(arr, arr+sizeof(arr)/sizeof(int), std::greater<int>());
    std::copy(arr, arr+sizeof(arr)/sizeof(int), std::ostream_iterator<int>(std::cout, "\t"));
    std::system("pause");
    return 0;
}
0
niXman
Эксперт С++
3202 / 1451 / 73
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
23.09.2010, 02:13 4
так выглядит естественней.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <iterator>
#include <functional>
 
int main(int argc, char* argv[])
{
    std::vector<int> arr(10);
    std::generate(arr.begin(), arr.end(), [](){return rand()%700;});
    std::sort(arr.begin(), arr.end());
    std::copy(arr.begin(), arr.end(), std::ostream_iterator<int>(std::cout, "\t"));
    std::cout<<"--------"<<std::endl;
    std::sort(arr.begin(), arr.end(), std::greater<int>());
    std::copy(arr.begin(), arr.end(), std::ostream_iterator<int>(std::cout, "\t"));
    std::system("pause");
    return 0;
}
0
gooseim
Эксперт С++
511 / 415 / 92
Регистрация: 23.09.2010
Сообщений: 1,159
23.09.2010, 02:17 5
niXman, но задание было про массив, а не вектор. И 0x - жестко для студенческой задачи.
0
niXman
Эксперт С++
3202 / 1451 / 73
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
23.09.2010, 02:20 6
gooseim, ага, недоглядел. спать пора...
0
Shaper
23 / 23 / 4
Регистрация: 05.05.2010
Сообщений: 82
23.09.2010, 16:06 7
Зачем так сложно? Сортировка какая-то. Вот:

C++
1
2
3
4
5
6
7
8
9
#define N 10;
 
main () 
{
  int a[N], i;
  a[0]=rand()%(700/N);
  for (i=1, i<N; i++) 
    a[i]=a[i-1]+rand()%(700/N);
}
Всё! Генерация и сортировка в одном флаконе! Это было по возрастанию. А вот по убыванию:

C++
1
2
3
4
5
6
7
8
9
#define N 10;
 
main () 
{
  int a[N], i;
  a[N-1]=rand()%(700/N);
  for (i=N-2, i>=0; i--) 
    a[i]=a[i+1]+rand()%(700/N);
}
1
ForEveR
В астрале
Эксперт С++
7996 / 4755 / 651
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
23.09.2010, 16:27 8
Shaper, Почему сложно то? Просто STL. Это не значит сложно. Это значит удобнее.
0
niXman
Эксперт С++
3202 / 1451 / 73
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
23.09.2010, 16:41 9
Shaper, супер!
логика сильна
0
Shaper
23 / 23 / 4
Регистрация: 05.05.2010
Сообщений: 82
27.09.2010, 12:22 10
Цитата Сообщение от Lavroff Посмотреть сообщение
Shaper, Почему сложно то? Просто STL. Это не значит сложно. Это значит удобнее.
Я не о языке. Алгоритм посмотри.
0
27.09.2010, 12:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.09.2010, 12:22

Заполнить массив случайными числами от -50 до 50
Нужно заполнить массив числами от -50 до 50 .Написал такой код #include...

Заполнить массив случайными числами
Задайте с помощью генератора случайных чисел массив в диапазоне от 1 до 100....

Заполнить массив случайными числами
Помогите, пожалуйста, как заполнить массив случайными числами в диапазоне от...


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

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

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