May 12, 2017 10:17
Вчера студент сказал мне, что функция rand генерирует случайное десятичное число и спросил, какой функцией он может сгенерировать случайное шестнадцатеричное :). Интересно, как он сдал на первом курсе информатику...
Leave a comment
Comments 23
Но у меня дочка такая, так что я о них очень в курсе.
Но с другой-то стороны, на программиста она учиться явно не пойдёт)
Reply
Reply
Reply
именно что нет; по двум сраз причинам:
PL/I (как и довольно многие языки) имеет разные типы для десятичных и двоичных чисел - более того с разными физически представлениями (например максимальная разрядност DECIMALO - 15 знаков, а BINARY - 32 двоичных разряда) - уже поэтому соответствующие функции различны.
Но что важнее - он (как опять же довольно многие языки) работает тут не с целыми числами, а с числами с фиксированной точкой - со знаками после запятой - а там результат округления случайность порушит практически 100%
Я же говорю - ваша реплика и пост - пример именно вашей зашоренности.
Reply
Арригинально!
Она умела, вроде, практически, нэ?
Но, вообще - подобные изолированные "дырки" легко могут жить длитеьное время в мозгу, поскольку особенно ни на что не влияют.
fixedpoint'ы однозначно отображаются на целые, да и сама rand является случайной только псевдо.
Собственно, всё это - чисто досужие рассуждения.
Никакого особенного значения это всё не имеет.
Reply
Reply
Reply
http://alex-zakharov.livejournal.com/213874.html?thread=994930#t994930
Reply
Reply
Видимо, у меня в голове, как выразилась Аня, "что-то другое" :)
Мне почему-то кажется, что система счисления должна входить в качестве параметра в генератор случайных чисел...
Reply
Reply
вот код, который он видел перед глазами
int a=rand(); //сгенерировали целое число
std::cout << a; //вывели его на экран
После этого на экране - число в десятичном представлении. Но если бы он написал
std::cout << hex() << a ( ... )
Reply
Leave a comment