2015-02-08 20:54:23
otwl007  Lv.47:0  Lv.1
BASS創作者兼二代目管理員
發言  

新增變數運算指令 / 新功能意見區 好主題 : 0

  其實有時侯,變數什麼的只有四則運算真的很不方便
  超簡潔的解釋
  所以我希望可以新增以下的指令:
  sys(setv: 變數名稱: random)
  當中的random是指從0.00000 至 0.99999 隨機啦
  當然你會問為什麼範圍不是0-99999 something like that
  這是因為這個世界上有一種東西叫做「把變數*100000」!!!!!!!
  而且random乘random可以把範圍變成0 至 9999800001!!!!!!!!!
  第二個指令
  sys(setv: 變數名稱: round)
  明顯地就是把「5.7895859345」變成「6」的東西
  如果你問那為什麼不順道弄成可以變成5.8,5.79之類的功能......
  因為你是可以先乘10,round off, 再除10的._____.
  即是5.7895859345 -> 57.895859345 -> 58 -> 5.8
  .______________________.

No.1282523591 2015-02-16 16:20:15
lazi  Lv.4:0  Lv.7
緊急事件請到FB找我
BM   發言  


 這兩個功能可以用囉~




otwl007 : 謝謝LA大!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(激動   2015-02-16 16:41

No.1028094618 2015-02-08 23:55:50
otwl007  Lv.47:0  Lv.1
BASS創作者兼二代目管理員
BM   發言  


 
 
 
 這兩個的用途還挺廣泛,不過我通常會有以下用途:
 第一個就是給予玩家隨機性的變數,對概率運算有更準確表現,
 有能有多樣性的變化
 例如玩家可獲得150~200個蘋果之類的
 那就可以嘗試sys(setv:apple:random,setv:apple:*50,setv:apple+149.5,setv:apple:round)
 這樣
 
 也可以用作隨機分配舞台出現順序
 例如想令舞台a b c d e能夠進行permutation
 目前的情況就會是要弄120個舞台來分配這五個舞台的出現順序
 但是有了這兩個功能
 就能夠:
 先設變數a=12345
 當中每個位元代表每個舞台
 之後使用隨機變數b進行1~5的隨機
 將得出來的隨機數代表著不同舞台的位序
 (當然要配合各種for while迴圈來阻止重複抽中的可能性的,不過這些迴圈用舞台轉換的特性就ok
 了)
 最後把得出來的結果轉為變數c d e f g例如是4 5 1 3 2這樣
 利用這些變數得出出現順序為舞台d e a c b
 這樣就能大大節省舞台
 p.s 這種做法我用科學型計算機內置的編寫程式嘗試過是可行的,不過有點複雜就是了
 
 
 




felita66 : 聽起來挺好的,尤其支持第二種指令--   2015-02-09 00:38
lazi : 會找時間增加這兩個   2015-02-09 09:18
ca32334790 : 這麼舉例我就懂了  感謝OZㄉㄉ(炸   2015-02-09 12:50

No.1163718357 2015-02-08 23:11:55
lazi  Lv.4:0  Lv.7
緊急事件請到FB找我
BM   發言  


 otwl007
 大概甚麼情況會用到這兩個?