Inconsistent behaviour of random() and Random.N()

Inconsistent behaviour of random() and Random.N() - Сообщения

#1 Опубликовано: 28.01.2020 20:04:24
Martin Kraska

Martin Kraska

1222 сообщений из 2150 понравились пользователям.

Группа: Moderator

I just came across a nasty difference between random(x) and Random.N(0,x) (the first being native SMath, the second from the Statistical Tools plugin).
If you store random(x) in a variable, the function is called each time the variable is used. If you do that with Random.N(), then a fixed value is stored at definition time, as if there was an internal eval() used.

If you want a fixed value when using random(), then you have to use eval().

The behavour of random() puzzled me when preparing an online worksheet , where I had to fall back to random().

Yet, when remembering that assignment is just storage of an expression with taking into account existing definitions but not doing any computation, then random() behaves consistent and Random.N() does not.

The worksheet would look better without eval() and I can't expect third party readers to understand why it is there.

ran.png
ran.sm (6 КиБ) скачан 28 раз(а).
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
1 пользователям понравился этот пост
sergio 29.01.2020 06:36:00
#2 Опубликовано: 29.01.2020 08:58:01
Jean Giraud

Jean Giraud

983 сообщений из 6866 понравились пользователям.

Группа: User

Wrote

The behavour of random() puzzled me when preparing an online worksheet , where I had to fall back to random().


Try this Martin, it may work in your SS 7251.
Cheers ... Jean

ran Otherwise.sm (23 КиБ) скачан 26 раз(а).

  • Новые сообщения Новые сообщения
  • Нет новых сообщений Нет новых сообщений