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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
MRG_Serejka
15 / 15 / 7
Регистрация: 15.08.2013
Сообщений: 177
Завершенные тесты: 2
#1

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

05.09.2013, 16:28. Просмотров 1138. Ответов 36
Метки нет (Все метки)

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++
Здравствуйте, можете, пожалуйста, поэтапно объяснить как работает приведенный ниже фрагмент кода? Что такое floor, return, ceil? double...

Как это работает? - C++
#include &lt;iostream&gt; int *fun() { int a = 5; return &amp;a; } int main() { int *ptr = fun(); std::cout &lt;&lt;...

Как это работает? - C++
Читаю я кое какой &quot;учебник&quot;, и в нём появился такой вот кусок кода int input (tank&amp; t, char map) { char act; int ch; int e =...

Как это работает - C++
Здравствуйте уважаемые форумчане!Как это работает? Как например предотвратить выход за приделы допустимых значений переменных!? ...

Как это работает? - C++
#include &lt;iostream&gt; #include &lt;cstring&gt; using namespace std; int main() { char* s=new char; ...

Как это работает? - C++
Доброго времени суток. Граждане программисты, подскажите пожалуйста как работает данный кусок кода??? А точнее дружественные функции...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SNIKERSMRG
3 / 3 / 1
Регистрация: 15.08.2013
Сообщений: 30
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
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
05.09.2013, 17:18     как все это в подробностях работает? #22
Цитата Сообщение от Kastaneda Посмотреть сообщение
рандом не зависит от "часов". Он зависит от seed'а, в качестве которого обычно подают текущее время, но это может быть любое другое (каждый раз разное) число.
а если подключить randomize; генерировать разные числа будут? или он работает только для random.
Raali
05.09.2013, 17:25
  #23

Не по теме:

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

VLK
193 / 162 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
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
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,054
Завершенные тесты: 1
05.09.2013, 17:30     как все это в подробностях работает? #25
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от VLK Посмотреть сообщение
ну добавим еще одну операцию (+ i) и уже будут разные числа
только почему бы srand не взять ДО цикла)
VLK
193 / 162 / 12
Регистрация: 05.05.2013
Сообщений: 1,225
05.09.2013, 17:33     как все это в подробностях работает? #26
Цитата Сообщение от Raali Посмотреть сообщение
только почему бы srand не взять ДО цикла)
либо еще лучше так.
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,054
Завершенные тесты: 1
05.09.2013, 17:51     как все это в подробностях работает? #27
for (int i=0; i<10; i++) {
srand(time(NULL) );
дело в том что цикл работает так быстро что time(NULL) возвращает одно и то же значение
Bend3r
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
05.09.2013, 18:05     как все это в подробностях работает? #28
Цитата Сообщение от Raali Посмотреть сообщение
что еще за randomize?
когда используешь функцию random к ней можно подключить randomize и при каждом новом рандоме будут совсем разные числа, а не повторяться.
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
05.09.2013, 18:17     как все это в подробностях работает? #29
Bend3r, по-моему кто-то попутал плюсы и паскаль...
SatanaXIII
Супер-модератор
Эксперт С++
5593 / 2627 / 240
Регистрация: 01.11.2011
Сообщений: 6,459
Завершенные тесты: 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
15 / 15 / 7
Регистрация: 15.08.2013
Сообщений: 177
Завершенные тесты: 2
06.09.2013, 12:56  [ТС]     как все это в подробностях работает? #31
а почему в ответе у меня не выходит ответ?
Миниатюры
как все это в подробностях работает?  
Raali
622 / 326 / 34
Регистрация: 06.07.2013
Сообщений: 1,054
Завершенные тесты: 1
06.09.2013, 13:11     как все это в подробностях работает? #32
после while убрать ";" надо
MRG_Serejka
15 / 15 / 7
Регистрация: 15.08.2013
Сообщений: 177
Завершенные тесты: 2
07.09.2013, 13:20  [ТС]     как все это в подробностях работает? #33
объясните почему если magic=rand() то число магическое равен 41 а не 42 и тд
Миниатюры
как все это в подробностях работает?  
zer0mail
2323 / 1949 / 192
Регистрация: 03.07.2012
Сообщений: 6,996
Записей в блоге: 1
07.09.2013, 13:29     как все это в подробностях работает? #34
Сначала объясните, что вы просите объяснить...
MRG_Serejka
15 / 15 / 7
Регистрация: 15.08.2013
Сообщений: 177
Завершенные тесты: 2
07.09.2013, 13:43  [ТС]     как все это в подробностях работает? #35
почему в ответе выходит число 41
Kuzia domovenok
1889 / 1744 / 117
Регистрация: 25.03.2012
Сообщений: 5,922
Записей в блоге: 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++
#include &lt;iostream&gt; #include &lt;algorithm&gt; using namespace std; long func (long * arr, int length) { return...

COORD position = {0,0}; - как это работает? - C++
Здравствуйте. Разбираю код двух программ: &quot;Сапер&quot; и &quot;Змейка&quot; и в каждой из них есть, вроде бы, функция COORD. То, что COORD position =...

объясните грамотно как это работает - C++
1)int * arr = NULL; и int * arr = new int;(что означает new) 2)можно менять int * arr = NULL на int * arr = {0} или int * arr = 0

Функция printf () как это работает - C++
Здраствуйте Ув. Форумчане. Прошу помочь разобраться с конкретным примером. #include &lt;iostream&gt; #include &lt;stdio.h&gt; float d = 1; ...

Методы доступа - как это работает? - C++
Здравствуйте, я изучаю С++ по книге Джесс Либерти: Освой самостоятельно C++ за 21 день. Мой вопрос, наверное, глупый, но хочется просто...


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

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

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