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

Как использовать генератор случайных чисел? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Vera_0709
0 / 0 / 0
Регистрация: 27.12.2011
Сообщений: 11
29.12.2011, 19:54     Как использовать генератор случайных чисел? #1
Помогите, пожалуйста, разобраться и исправить программу .Как в этой программе добавить генератор случайных чисел? Объясните, пожалуйста, по строчкам, как работает программа, а то я не совсем понимаю.

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
include <iostream>
 
using namespace std;
 
int main()
{
int mas[20];
int buf;
cout<<" Vvedite 20 4isel v diapazone ot -10 do 10:"<<endl;
for(int i=0;i<20; i++)
{
        cin>>mas[i];
}
for(int a=0; a<20; a++)
{
for(int i=0;i<19; i++)
{
        if(mas[i]>mas[i+1])
        {
                buf=mas[i];
                mas[i]=mas[i+1];
                mas[i+1]=buf;
        }
}
}
cout<<" stroka otsortirovana: ";
 for(int i=0;i<20; i++)
        { cout<<mas[i]<<' ';
 }
 int l;
 cin>>l;
system ("pause");
}
 Комментарий модератора 
Используйте теги форматирования кода!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2011, 19:54     Как использовать генератор случайных чисел?
Посмотрите здесь:

C++ Генератор случайных чисел
C++ генератор случайных чисел
C++ Как сделать генератор случайных чисел?
C++ Генератор случайных чисел
C++ Генератор случайных чисел (с UI)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.12.2011, 20:04     Как использовать генератор случайных чисел? #2
C++
1
2
3
4
5
6
7
8
9
#include <ctime>
#include <cstdlib>
#include <algorithm>
//...
template <class T> T gen() { return rand() % 21 - 10; }
//
srand(time(NULL));
int mas[20];
std::generate(mas, mas + 20, gen<int>);
Или
C++
1
2
3
4
5
6
7
#include <ctime>
#include <cstdlib>
//...
srand(time(NULL));
int mas[20];
for(int i = 0; i < 20; ++i)
    mas[i] = rand() % 21 - 10;
Добавлено через 1 минуту
Цитата Сообщение от Vera_0709 Посмотреть сообщение
Объясните, пожалуйста, по строчкам, как работает программа, а то я не совсем понимаю.
Что там объяснять, вводите массив, сортируете, выводите. Все.
Vera_0709
0 / 0 / 0
Регистрация: 27.12.2011
Сообщений: 11
29.12.2011, 20:36  [ТС]     Как использовать генератор случайных чисел? #3
что означают эти строчки??
C++
1
2
3
4
5
6
7
for(int i=0;i<19; i++)
 {
 if(mas[i]>mas[i+1])
 {
 buf=mas[i];
 mas[i]=mas[i+1];
 mas[i+1]=buf;
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.12.2011, 20:41     Как использовать генератор случайных чисел? #4
Сравниваются 2 элемента. Если один больше другого, то они обмениваются. Это стандартная, учебная сортировка.
Vera_0709
0 / 0 / 0
Регистрация: 27.12.2011
Сообщений: 11
29.12.2011, 21:01  [ТС]     Как использовать генератор случайных чисел? #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
42
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <ctime>
#include <cstdlib>
 using namespace std;
 int  main(void)
{
int mas[20], i, min;
int buf;
rand();
min=10;
//zapoln9em massiv
for (i=0;i<20;i++)
{mas[i]=rand()%21-10;}
 
//vb1vodim massiv
printf("massiv: \n");
for (i=0;i<20;i++)
{printf("%i ", mas[i]);
}
 
for(int a=0; a<20; a++)
{
for(int i=0;i<19; i++)
{
        if(mas[i]>mas[i+1])
        {
                buf=mas[i];
                mas[i]=mas[i+1];
                mas[i+1]=buf;
        }
}
}
 
//vb1vod obrabotannogo massiva
printf("\n Otsortirovannyi  massiv: \n");
for (i=0;i<20;i++)
{printf("%i ", mas[i]);
}
getch();
}
Vera_0709
0 / 0 / 0
Регистрация: 27.12.2011
Сообщений: 11
04.01.2012, 23:34  [ТС]     Как использовать генератор случайных чисел? #6
что означает переменная i?
vetal10
35 / 35 / 5
Регистрация: 25.05.2010
Сообщений: 211
04.01.2012, 23:42     Как использовать генератор случайных чисел? #7
i ето счетчик цикла
Vera_0709
0 / 0 / 0
Регистрация: 27.12.2011
Сообщений: 11
04.01.2012, 23:45  [ТС]     Как использовать генератор случайных чисел? #8
Цитата Сообщение от Vera_0709 Посмотреть сообщение
for(int a=0; a<20; a++)
а что тогда означает "а"?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.01.2012, 23:49     Как использовать генератор случайных чисел?
Еще ссылки по теме:

C++ Как создать генератор случайных чисел
Генератор случайных чисел. Как прикрепить? C++
Генератор случайных чисел C++

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

Или воспользуйтесь поиском по форуму:
NoMasters
Псевдослучайный
1737 / 1080 / 69
Регистрация: 13.09.2011
Сообщений: 3,093
04.01.2012, 23:49     Как использовать генератор случайных чисел? #9
Счетчик другого цикла же

Не по теме:

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

Yandex
Объявления
04.01.2012, 23:49     Как использовать генератор случайных чисел?
Ответ Создать тему
Опции темы

Текущее время: 10:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru