mirror of
https://github.com/QB64Official/qb64.git
synced 2024-08-30 10:40:15 +00:00
62 lines
2.4 KiB
Text
62 lines
2.4 KiB
Text
|
The '''TIME$''' Function returns a [[STRING]] representation of the current computer time in a 24 hour format.
|
||
|
|
||
|
|
||
|
{{PageSyntax}}
|
||
|
:: PRINT "Present time = "; TIME$
|
||
|
|
||
|
|
||
|
* Returns the present computer time in following hh:mm:ss 24 hour format: "19:20:33"
|
||
|
* Uses 2 colon (:) separators between hours, minutes and seconds
|
||
|
* Hour values range from "00" to "23" starting from midnite.
|
||
|
* Minutes and seconds range from "00" to "59"
|
||
|
* Continuous TIME$ calls may lag if a QBasic program is minimized to the taskbar!
|
||
|
|
||
|
|
||
|
''Example 1:'' A simple clock using [[DRAW]] with Turn Angle.
|
||
|
{{CodeStart}} '' ''
|
||
|
{{Cl|SCREEN}} 12
|
||
|
{{Cl|DO}}
|
||
|
{{Cl|CLS}}
|
||
|
t$ = {{Cl|TIME$}}: h = {{Cl|VAL}}(t$): m = {{Cl|VAL}}({{Cl|MID$}}(t$, 4, 2)): s = {{Cl|VAL}}({{Cl|MID$}}(t$, 7, 2))
|
||
|
{{Cl|PRINT}} t$
|
||
|
{{Cl|CIRCLE}} {{Cl|STEP}}(0, 0), 200, 8
|
||
|
{{Cl|DRAW}} "c12ta" + {{Cl|STR$}}((h {{Cl|MOD}} 12) * -30) + "nu133"
|
||
|
{{Cl|DRAW}} "c14ta" + {{Cl|STR$}}(m * -6) + "nu200"
|
||
|
{{Cl|DRAW}} "c9ta" + {{Cl|STR$}}(s * -6) + "nu200"
|
||
|
{{Cl|_DISPLAY}}
|
||
|
{{Cl|_LIMIT}} 1
|
||
|
{{Cl|LOOP}} {{Cl|UNTIL}} {{Cl|INKEY$}} = {{Cl|CHR$}}(27) '' ''
|
||
|
{{CodeEnd}}
|
||
|
{{small|Code by Galleon}}
|
||
|
|
||
|
|
||
|
''Example 2:'' The following Function converts TIME$ to normal 12 hour AM-PM digital clock format.
|
||
|
{{CodeStart}} '' ''
|
||
|
PRINT TIME$
|
||
|
PRINT Clock$
|
||
|
|
||
|
{{Cl|FUNCTION}} Clock$
|
||
|
hour$ = {{Cl|LEFT$}}(TIME$, 2): H% = {{Cl|VAL}}(hour$)
|
||
|
min$ = {{Cl|MID$}}(TIME$, 3, 3)
|
||
|
IF H% >= 12 THEN ampm$ = " PM" ELSE ampm$ = " AM"
|
||
|
IF H% > 12 THEN
|
||
|
IF H% - 12 < 10 THEN hour$ = {{Cl|STR$}}(H% - 12) ELSE hour$ = {{Cl|LTRIM$}}({{Cl|STR$}}(H% - 12))
|
||
|
ELSEIF H% = 0 THEN hour$ = "12" ' midnight hour
|
||
|
ELSE : IF H% < 10 THEN hour$ = {{Cl|STR$}}(H%) ' eliminate leading zeros
|
||
|
END IF
|
||
|
Clock$ = hour$ + min$ + ampm$
|
||
|
END FUNCTION '' ''
|
||
|
{{CodeEnd}}
|
||
|
{{OutputStart}}
|
||
|
14:13:36
|
||
|
2:13 PM
|
||
|
{{OutputEnd}}
|
||
|
:''Explanation:'' When hours are less than 10 (but not 0), {{KW|STR$}}(H%) alone keeps a space ahead of the hour. For 2 digit hours, {{KW|LTRIM$}} is used to remove that leading space. For the hours of 10 AM to 12 PM, the hour {{KW|STRING}} value is passed from {{KW|LEFT$}}(TIME$, 2) at the beginning of the function.
|
||
|
|
||
|
|
||
|
''See also:''
|
||
|
* [[TIME$ (statement)]], [[DATE$]], [[DATE$ (statement)]]
|
||
|
* [[VAL]], [[STR$]], [[LTRIM$]], [[MID$]], [[LEFT$]], [[IF...THEN]]
|
||
|
|
||
|
|
||
|
{{PageNavigation}}
|