[問題] 亂數存陣列的問題

作者: pugboy   2020-09-23 17:23:11
想請問各位大大
我寫了一個猜數字的程式, 就是輸入4個數字, 如果猜對一開始電腦亂數給的數字
的位置跟數字的話就輸出4A0B(例如亂數是4567, 你猜也是4567的話),
如果猜錯位置但是數字是對的話就輸出0A4B(例如亂數是4567, 你猜7654的話)
也就是說只有數字跟位置猜對才會輸出A, 只有數字對位置不對就輸出B.
我寫了程式如下
https://dotnetfiddle.net/hM5h0B
問題點是我Run程式時一開始電腦亂數給的數字是6724
https://ibb.co/PrDRbbj
我輸入1234之後, 電腦一開始的亂數卻改成4015了
https://ibb.co/K0Cpsz9
但是我的While(true)是設在33行,電腦輸入亂數的程式碼我都寫在while迴圈之外
也就是7到26行那幾行,但是只要我每次輸入猜的數字,程式碼好像都會跑回去執行
電腦亂數產生丟到randomResult陣列的那幾行,所以數字一直被改掉,但是我明明就寫在
while之外阿,很奇怪耶
可以請各位大大幫我看一下嗎! 非常感謝!!
作者: ssccg (23)   2020-09-23 18:16:00
應該是這個網站的問題,每次輸出後其實程式就結束了,每次輸入後實際上是重啟程式+送入之前的所有輸入畢竟網站不知道你會不會輸入,不想把Process無限時開著等
作者: rainer0513 (rainer)   2020-09-23 22:43:00
應該是要把random的值存在Session來比較吧
作者: liaommx (Orz)   2020-09-23 22:45:00
你這個程式在ans[p] = Int32.Parse(guess[p]);會有邏輯上的問題,string 可以直接用陣列取直,而不是像c一樣要用字元陣列去取直其他的部分就和上面前輩提的一樣.更正一下,應該是再更之前的readline存入就有問題了string[] guess這個地方,和下面的ans[p]的地方要稍微配合因為guess永遠只有guess[0],也就是你輸入的那個字.幫你調整一下程式,不過這應該還是在自己的電腦上跑比較正確,visual studio core都免費了.https://dotnetfiddle.net/kr5RDu
作者: pugboy   2020-09-24 01:22:00
謝謝各位大大前輩指導, 我知道了, 謝謝!

Links booklink

Contact Us: admin [ a t ] ucptt.com