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

как все это в подробностях работает? - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
MRG_Serejka
10 / 10 / 3
Регистрация: 15.08.2013
Сообщений: 146
Завершенные тесты: 2
05.09.2013, 16:28     как все это в подробностях работает? #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream> 
#include<cstdlib>
using namespace std;
 
int main() 
{
    setlocale(LC_ALL, "Russian");
    int i;
    int r;
    r=rand();
for(i=0;r<=20000;i++)
    r=rand();
cout<<"число равно"<<r<<".Оно было получено на шаге "<<i<<".";
 
return 0;
        
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.09.2013, 16:28     как все это в подробностях работает?
Посмотрите здесь:

C++ Как это работает
Как это работает? C++
C++ Как это работает?
Как это работает? C++
Русификация.Работает-супер! Обьяснитте, как это работает? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SNIKERSMRG
3 / 3 / 1
Регистрация: 15.08.2013
Сообщений: 21
05.09.2013, 17:13     как все это в подробностях работает? #21
Цитата Сообщение от MousePro Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream> 
#include<cstdlib>
using namespace std;
 
int main() 
{
    setlocale(LC_ALL, "Russian");
    int i=0;
    int r=0;
    r=rand();
for(i=0;r<=10;i++)
{
    r=rand();
cout<<"число равно"<<r<<".Оно было получено на шаге "<<i<<".";
}
 
return 0;
        
}
Вот так сделай
а ведь ничего не поменялось кроме цифры 10 вместо 20000.
Вы хотите сказать что в зависимости от цифры до ограничения рандома, будет разный шаг ?

Т.е. к примеру, идет круг, i=0 сначала, число рандома меньше 20000, i=i+1


аааааа...т.е. пока рандом будет выдавать числа меньше 20000 алгоритм будет работать да ? или наоборот ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Bend3r
 Аватар для Bend3r
142 / 129 / 17
Регистрация: 29.07.2012
Сообщений: 681
05.09.2013, 17:18     как все это в подробностях работает? #22
Цитата Сообщение от Kastaneda Посмотреть сообщение
рандом не зависит от "часов". Он зависит от seed'а, в качестве которого обычно подают текущее время, но это может быть любое другое (каждый раз разное) число.
а если подключить randomize; генерировать разные числа будут? или он работает только для random.
Raali
05.09.2013, 17:25
  #23

Не по теме:

Цитата Сообщение от Bend3r Посмотреть сообщение
randomize
что еще за randomize?

VLK
 Аватар для VLK
192 / 161 / 12
Регистрация: 05.05.2013
Сообщений: 1,221
05.09.2013, 17:29     как все это в подробностях работает? #24
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
ну добавим еще одну операцию (+ i) и уже будут разные числа

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
 
int main()
{
cout<<"random sequence? really?"<<endl;
 
for (int i=0; i<10; i++) {
 
srand(time(NULL) + i);
 
cout<<rand()<<endl; }
 
system("pause");
return 0;
}
как говорится выход есть всегда

хотя это не совсем тот рандом, который хотелось бы видеть.
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
05.09.2013, 17:30     как все это в подробностях работает? #25
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от VLK Посмотреть сообщение
ну добавим еще одну операцию (+ i) и уже будут разные числа
только почему бы srand не взять ДО цикла)
VLK
 Аватар для VLK
192 / 161 / 12
Регистрация: 05.05.2013
Сообщений: 1,221
05.09.2013, 17:33     как все это в подробностях работает? #26
Цитата Сообщение от Raali Посмотреть сообщение
только почему бы srand не взять ДО цикла)
либо еще лучше так.
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
05.09.2013, 17:51     как все это в подробностях работает? #27
for (int i=0; i<10; i++) {
srand(time(NULL) );
дело в том что цикл работает так быстро что time(NULL) возвращает одно и то же значение
Bend3r
 Аватар для Bend3r
142 / 129 / 17
Регистрация: 29.07.2012
Сообщений: 681
05.09.2013, 18:05     как все это в подробностях работает? #28
Цитата Сообщение от Raali Посмотреть сообщение
что еще за randomize?
когда используешь функцию random к ней можно подключить randomize и при каждом новом рандоме будут совсем разные числа, а не повторяться.
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 538
05.09.2013, 18:17     как все это в подробностях работает? #29
Bend3r, по-моему кто-то попутал плюсы и паскаль...
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,337
Завершенные тесты: 1
06.09.2013, 09:41     как все это в подробностях работает? #30
Цитата Сообщение от Afflicted Посмотреть сообщение
по-моему кто-то попутал плюсы и паскаль...
Турбо паскаль. И там Randomize.
А в борланде (а может и не только) макроподстановка, включенная в stdlib.h (само собой желательно подключение time.h):
C++
1
inline void _RTLENTRY randomize(void) { srand((unsigned) time(NULL)); }
MRG_Serejka
10 / 10 / 3
Регистрация: 15.08.2013
Сообщений: 146
Завершенные тесты: 2
06.09.2013, 12:56  [ТС]     как все это в подробностях работает? #31
а почему в ответе у меня не выходит ответ?
Миниатюры
как все это в подробностях работает?  
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
06.09.2013, 13:11     как все это в подробностях работает? #32
после while убрать ";" надо
MRG_Serejka
10 / 10 / 3
Регистрация: 15.08.2013
Сообщений: 146
Завершенные тесты: 2
07.09.2013, 13:20  [ТС]     как все это в подробностях работает? #33
объясните почему если magic=rand() то число магическое равен 41 а не 42 и тд
Миниатюры
как все это в подробностях работает?  
zer0mail
2188 / 1871 / 187
Регистрация: 03.07.2012
Сообщений: 6,661
Записей в блоге: 1
07.09.2013, 13:29     как все это в подробностях работает? #34
Сначала объясните, что вы просите объяснить...
MRG_Serejka
10 / 10 / 3
Регистрация: 15.08.2013
Сообщений: 146
Завершенные тесты: 2
07.09.2013, 13:43  [ТС]     как все это в подробностях работает? #35
почему в ответе выходит число 41
Kuzia domovenok
 Аватар для Kuzia domovenok
1883 / 1738 / 116
Регистрация: 25.03.2012
Сообщений: 5,907
Записей в блоге: 1
07.09.2013, 15:21     как все это в подробностях работает? #36
Где ты 41 вообще увидел??? Извини, но мне кажется, ты уже четыре страницы ерундой какой-то страдаешь. Ведь что такое rand и srand мы выяснили на первых страницах. Дальше то что?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.09.2013, 15:44     как все это в подробностях работает?
Еще ссылки по теме:

C++ Как это работает?
C++ Как это работает?
Как это работает? Я хочу спросить как работает C++ и где можно про него почитать C++

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

Или воспользуйтесь поиском по форуму:
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,057
07.09.2013, 15:44     как все это в подробностях работает? #37
Цитата Сообщение от SNIKERSMRG Посмотреть сообщение
а ведь ничего не поменялось кроме цифры 10 вместо 20000.
и на экран будет выходить не одна надпись, а несколько
тело цикла изменилось(скобочки поставили)
был один оператор стало два
Yandex
Объявления
07.09.2013, 15:44     как все это в подробностях работает?
Ответ Создать тему
Опции темы

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