visual fox pro 20 分钟 20 分钟
Round minutes 20 in 20 in visual fox pro
请问我在解决有关 Visual Fox Pro 中某个程序的功能时遇到问题。
我需要每 20 分钟进行一次四舍五入。
例如:如果我收到 19 分钟 (0.316),您需要 return 0 分钟。
如果我在 0-19 分钟之间,return 0 分钟
如果我在 20-39 分钟之间,return 20 分钟
如果我在 40-59 分钟之间,return 40 分钟
如果我在 60-79 分钟之间,return 60 分钟
我正在考虑使用 ROUND() 但我不知道如何使用,因为 "Round" 接近最接近的小数。
提前致谢。
这是我制作的一个小程序,希望能对您有所帮助,或者至少让您朝着正确的方向前进。
lnStart = 0
lnEnd = 20
lnReceivedMinutes = 500
llNotDone = .T.
IF lnReceivedMinutes > 0
DO WHILE llNotDone
IF BETWEEN(lnReceivedMinutes, lnStart, lnEnd)
llNotDone = .F.
MESSAGEBOX(ALLTRIM(STR(lnStart)) + " Minutes")
ELSE
lnStart = lnStart + 20
lnEnd = lnEnd + 20
ENDIF
ENDDO
ENDIF
我检查收到的值是否在我的 lnStart
和 lnEnd
之间。如果不是,我会在接下来的 20 分钟内检查。
roundedMinutes = Floor( m.myMinute / 20 ) * 20
例如:
Create Cursor SampleMin (minutes i, rounded i)
Local ix
For ix = 1 To 600
Insert Into SampleMin ;
(minutes, rounded) ;
values ;
(m.ix, Floor(m.ix/20) * 20)
Endfor
Locate
Browse
Cetin Basoz 给出了正确答案
roundedMinutes = Floor( m.myMinute / 20 ) * 20
我检查过自己
请问我在解决有关 Visual Fox Pro 中某个程序的功能时遇到问题。
我需要每 20 分钟进行一次四舍五入。 例如:如果我收到 19 分钟 (0.316),您需要 return 0 分钟。 如果我在 0-19 分钟之间,return 0 分钟 如果我在 20-39 分钟之间,return 20 分钟 如果我在 40-59 分钟之间,return 40 分钟 如果我在 60-79 分钟之间,return 60 分钟
我正在考虑使用 ROUND() 但我不知道如何使用,因为 "Round" 接近最接近的小数。
提前致谢。
这是我制作的一个小程序,希望能对您有所帮助,或者至少让您朝着正确的方向前进。
lnStart = 0
lnEnd = 20
lnReceivedMinutes = 500
llNotDone = .T.
IF lnReceivedMinutes > 0
DO WHILE llNotDone
IF BETWEEN(lnReceivedMinutes, lnStart, lnEnd)
llNotDone = .F.
MESSAGEBOX(ALLTRIM(STR(lnStart)) + " Minutes")
ELSE
lnStart = lnStart + 20
lnEnd = lnEnd + 20
ENDIF
ENDDO
ENDIF
我检查收到的值是否在我的 lnStart
和 lnEnd
之间。如果不是,我会在接下来的 20 分钟内检查。
roundedMinutes = Floor( m.myMinute / 20 ) * 20
例如:
Create Cursor SampleMin (minutes i, rounded i)
Local ix
For ix = 1 To 600
Insert Into SampleMin ;
(minutes, rounded) ;
values ;
(m.ix, Floor(m.ix/20) * 20)
Endfor
Locate
Browse
Cetin Basoz 给出了正确答案
roundedMinutes = Floor( m.myMinute / 20 ) * 20
我检查过自己