time - 如何在 QBasic 中解析以年为单位的时间

标签 time basic qbasic

如何在 Microsoft QBasic 中解析测试所需的时间(月/日/年)。

s = 'PT1H28M26S'

我想得到:

num_mins = 88

最佳答案

您可以使用下面的代码解析这样的时间字符串,但真正的问题是:
2015年谁还在用QBasic!?

CLS
s$ = "PT1H28M26S"

' find the key characters in string
posP = INSTR(s$, "PT")
posH = INSTR(s$, "H")
posM = INSTR(s$, "M")
posS = INSTR(s$, "S")

' if one of values is zero, multiplying all will be zero
IF ((posP * posH * posM * posS) = 0) THEN
  ' one or more key characters are missing
  nummins = -1
  numsecs = -1
ELSE
  ' get values as string
  sHour$ = MID$(s$, posP + 2, (posH - posP - 2))
  sMin$ = MID$(s$, posH + 1, (posM - posH - 1))
  sSec$ = MID$(s$, posM + 1, (posS - posM - 1))

  ' string to integer, so we can calculate
  iHour = VAL(sHour$)
  iMin = VAL(sMin$)
  iSec = VAL(sSec$)

  ' calculate totals
  nummins = (iHour * 60) + iMin
  numsecs = (iHour * 60 * 60) + (iMin * 60) + iSec
END IF

' display results
PRINT "Number of minutes: "; nummins
PRINT "Number of seconds: "; numsecs
PRINT "QBasic in 2015! w00t?!"

关于time - 如何在 QBasic 中解析以年为单位的时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29322884/

相关文章:

c++ - 如何计算自今天开始以来的秒数?

basic - 为什么这些无意义的 QB 计算会产生略微不同的值?

vb.net - ATN 从 QBasic 到 VB.Net

python - ZX81 BASIC 到 "Dropout"游戏的 Pygame 转换

reference - 在哪里可以找到标准 Basic 的快速引用?

java - 用 java 编写 BASIC 解释器 - 循环和 ifs

if-statement - 为什么我们使用 "End If"语句?

python - 我怎样才能使这段代码运行得更快? (在大语料库中搜索大词)

php - FrozenTime 对象之谜

ruby-on-rails - rails 更短 "time_ago_in_words"