請教VB的問題,請教VB的一個問題

2022-10-12 09:35:11 字數 1056 閱讀 4153

1樓:匿名使用者

mod 取模運算2008-02-26 15:40print 4 mod -3

1 print 4 mod 3

1 print -4 mod -3

-1 print -4 mod 3

-1 print -7.8 mod -4.56-3 總結:mod就是求餘數或稱取模,結果是兩數相除後的餘數。

規則:若參加運算的運算元不是整數,先將其四捨五入成整數再運算;若參加運算的數含有負數,則先取絕對值,再求餘,結果的符號與被除數符號相同

關於負號取餘:

這是異號求餘的規則:a%b=c,則c的值為:|a|%|b|的結果,讓這個結果與a同號,然後在和b相加。比如:

|-15|%|4|=3,然後-3+4=1

如果是15%(-4),則結果為 3+(-4)=-1注意一定是兩數異號時才是這種規則,同號時跟一般的演算法相同你的這個問題可以寫個小程式檢驗一下:

private sub command1_click()dim i%, j%

for j = 0 to 3

i = not (j mod 2)

print i

next j

end sub

執行時你會發現i的值不是-1就是-2,至於為什麼我也搞不太懂而只要i的值即not(j mod 2)不為0,都相當於true會一直執行x=x+1

2樓:匿名使用者

對於if not (j mod 2) then x = x + 1這句話應該這樣理解:

j mod 2 的值只有三種情況,0,1,-1(比如j=-1,-3,-5)

那麼 not (j mod 2) 的值對應的也就只有三種情況了,對應上面的值分別為-1,-2,0

在if條件語句中,

if 後跟的條件的值只要不為0,就會執行then後面的語句;

所以,這句話也就好理解了,

也即只要j不是負奇數就累加x。

3樓:匿名使用者

if not (j mod 2) then x = x + 1

假如 j能被2整除,則x=x+1

請教VB問題

新增一個command1按鈕控制元件 private sub command1 click dim i as integer,s as stringme.autoredraw true for i 1 to 9 s s cstr i me.print s next i end sub 很簡單 pri...

VB程式設計問題請教

if then語句有行語句和塊語句.你這樣寫,第2個if a1 375 then a2 0.571 是行語句 你看給你整理下.private sub command5 click if a1 0 and a1 1000 then if a1 375 then a2 0.571 elseif a1 4...

VB菜鳥的小問題,VB菜鳥的一個小問題

text1 是指你建立的文字框的名稱,如果你再在視窗建一個文字控制元件那系統會命名為 text2 text 是指物件 text1 的一個屬性,表示你將會在 text1 中輸入的內容,比如 text1.text 歡迎光臨 那 text1 文字框中就會顯示 歡迎光臨 的內容你要是想設定 text1 中文...