請問變數如何反應

  •   31 
  • 最後發表   努力中  2024 二月 20
努力中 發文於   2024/02/16

請問小編或前輩們,

if 條件1 then condition1=true

也就是條件1成立則 true,若後續條件1變為不成立時,則回復預設為fales,到這邊都還正常

但若新增

if 條件2 then condition1=true

使用同一個邏輯變數condition1,不論條件1或2有沒有滿足,都是持續顯示true,請問這樣是正常的嗎

照理應該是條件1或2任一滿足就真,其他都為假不是嗎?

若條件2用不同變數condition2就沒這問題,但這樣要存在太多變數了

我想要僅用一個變數,可讓所有條件式共用,且能隨時反應真假

請問有解決方法嗎?

感謝回答 謝謝

排序方式: 標準 | 最新
XS小編 發文於   2024/02/20

Hello 努力中,

 

您的理解有誤。

 

if 條件1 then condition1=true;

這種寫法會讓條件1成立後 condition1 一直維持在True,不論後續條件1是否成立。

理由很簡單,當變數沒有被變動時,就會維持在前期值。

而只有條件1成立時 condition1 會變動 (從 False 轉為 True),故condition1會維持在True。

 

if 條件1 then condition1=true else condition1 = false;

condition1 = 條件1;

這兩種寫法才會讓條件1不成立時 condition1 為 false。

 

condition1 = 條件1 or 條件2;

條件1或2任一滿足就真,其他都為假可以這樣寫。

努力中 發文於   2024/02/20

我想了好幾天也的確這樣才解決,那看來沒錯了,謝謝回覆

發表回覆
Close